Skip to content

quick-perf/quickperf

Repository files navigation

QuickPerf

QuickPerf is a testing library for Java providing annotations to quickly evaluate some performance properties.


Maven Central License Build Status Gitter Twitter Follow


Usage

JVM annotations

 @MeasureHeapAllocation @HeapSize(value = 1, unit = AllocationUnit.GIGA_BYTE) @Test public void execute_batch() { ... }

πŸ“™ All the JVM annotations Β Β  πŸ”Ž Heap allocation of Apache Maven

SQL annotations

 @ExpectSelect(1) @Test public void should_find_all_players() { ... }
[PERF] You may think that <1> select request was sent to the database But in fact <10>... 

Auto-detection of Hibernate and Spring Data JPA:

Perhaps you are facing a N+1 select issue	* With Hibernate, you may fix it by using JOIN FETCH or LEFT JOIN FETCH or FetchType.LAZY or ... 
* With Spring Data JPA, you may fix it by adding	@EntityGraph(attributePaths = { "..." }) on repository method. 

πŸ“™ All the SQL annotations Β Β  πŸ”Ž QuickPerf in a Spring Boot project: repository, service, webservice

Documentation

The full documentation is available here.

Something to ask us?

πŸ’¬ Want to chat with us? Join us on gitter

:octocat: You prefer to use a Github issue to ask a question? Create a question issue

Show your support

Please ⭐ this repository or Tweet if this project helped you!

Contributing

You are very welcome to contribute to QuickPerf! You can contribute in many ways to QuickPerf. Some relatively easy things can be done. Other issues are more challenging. Every contribution is appreciated. Read our contributing guide to learn more.

Contributors

Many thanks to all our contributors!

Jean Bisutti
Jean Bisutti

πŸ’» ⚠ πŸ“– 🎨
πŸ’‘ πŸ‘€ πŸ“’
guiRagh
guiRagh

πŸ’» ⚠
Patrice CAVEZZAN
Patrice CAVEZZAN

πŸ’» πŸ“–
Alexandre Blanchard
Alexandre Blanchard

πŸ› πŸ’»
Eric McDowell
Eric McDowell

πŸ’»
Jan KrΓΌger
Jan KrΓΌger

πŸ’»
emoji key

Sponsors

Many thanks Zenika for sponsoring this project!

with love by zenika

License

Apache License 2.0