Skip to content

Changes between 1.0.0 RC7 and 1.0.0

Jean Bisutti edited this page Nov 17, 2020 · 63 revisions

πŸš€ New features and improvements

General

Core

JVM

  • Add Javadoc to JVM annotations @FTarfasse
  • Ability to enable JDK Flight Recording with OpenJDK JDK 8 @jeanbisutti
  • Display JVM info in the error report when QuickPerf can't enable JFR profiling @jeanbisutti
  • Fix wording: Java Mission Control replaced with JDK Mission Control @jeanbisutti
  • Bump JMC from 7.0.0 to 7.1.1 @jeanbisutti
  • Add heap allocation non-regression test for JUnit 4.5 @jeanbisutti

SQL

JUnit 5

JUnit 5 & JVM

  • Execute only once @BeforeEach and @AfterEach code (from the JVM executing the test method) @loicmathieu

Build

  • Add JDK 15 build @jeanbisutti
  • Ability to deploy with a release profile without having to install with default profile previously @hboutemy

πŸ› Bug fixes

JVM

  • Fix heap allocation measure for JUnit 4.13 and JUnit 4.13.1 @jeanbisutti

SQL

⚠️ Breaking changes

Core

JVM

  • To be able to use the ProfileJvm and ExpectNoJvmIssue annotations, the following dependency has to be added:
<dependency>
   <groupId>org.quickperf</groupId>
   <artifactId>quick-perf-jfr-annotations</artifactId>
   <version>1.0.0</version>
   <scope>test</scope>
</dependency>

These dependencies are also moved to org.quickperf.jvm.jfr.annotation package.

SQL

  • SqlAnnotationBuilder.disableSameSelectTypesWithDifferentParams() renamed SqlAnnotationBuilder.disableSameSelectTypesWithDifferentParamValues() @jeanbisutti
  • Set default value from zero to one for ExpectSelect, ExpectInsert, ExpectUpdate, ExpectDelete, ExpectUpdatedColumn, and ExpectSelectedColumn annotations @jeanbisutti
  • DisableExactlySameSelects annotation renamed DisableSameSelects and EnableExactlySameSelects annotation renamed EnableSameSelects @jeanbisutti
  • Remove DisableCrossJoin and EnableCrossJoin annotations because modern databases replace the cross join @jeanbisutti
  • For ExpectMaxQueryExecutionTime annotation, the value and unit elements are replaced with a thresholdInMilliSeconds element. See this commit

JUnit 4

JUnit 5

πŸ‘ Contributors

@jeanbisutti

@FTarfasse

@hboutemy

@kanedafromparis

@loicmathieu

@MohamedKaraga

@MrSnix

@navkumar258

Annotations

πŸ‘‰ Β Core

πŸ‘‰ Β JVM

πŸ‘‰ Β SQL

πŸ‘‰ Β Scopes

πŸ‘‰ Β Create an annotation

Supported frameworks

πŸ‘‰ Β JUnit 4

πŸ‘‰ Β JUnit 5

πŸ‘‰ Β TestNG

πŸ‘‰ Β Spring

How to

πŸ‘‰ Β Detect and fix N+1 SELECT

Project examples

πŸ‘‰ Β Maven performance

πŸ‘‰ Β Spring Boot - JUnit 4

πŸ‘‰ Β Spring Boot - JUnit 5

πŸ‘‰ Β Micronaut Data - JUnit 5

πŸ‘‰ Β Micronaut - Spring - JUnit 5

πŸ‘‰ Β Quarkus - JUnit 5

Miscellaneous

πŸ‘‰ Β FAQ

πŸ‘‰ Β QuickPerf code

Clone this wiki locally