Releases: mannodermaus/android-junit5
1.0.0
This release brings compatibility with JUnit 5.0.0.
Breaking Changes
- The deprecated dependency handlers
junitJupiter()andjunitParams()have been removed. Please update your Gradle files to usejunit5()andjunit5Params()instead.
1.0.0-RC3 Revision 1
The dependency handlers provided by this plugin have been renamed, and the old names deprecated & marked for removal in a future release. The new declarations suit their actual nature better, since they provide more than "just" Jupiter when applied:
| Old | Rename To |
|---|---|
junitJupiter() |
junit5() |
junitParams() |
junit5Params() |
Also, we can finally run JUnit 5 Tests directly from Android Studio! I've found a workaround to the outdated integration embedded in AS' build of IntelliJ, which allows users to overwrite the JUnit 5-based Launcher of IntelliJ with a more recent version that doesn't use removed APIs. Simply attach the following new dependency to your module:
testCompileOnly "de.mannodermaus.gradle.plugins:android-junit5-embedded-runtime:1.0.0-RC3-rev1"
I hope to be able to deprecate this intermediate library very soon, because Android Studio has to eventually merge the proper branch of the upstream IDEA & obtain compatibility out-of-the-box again. In the meantime, this is a pretty clean solution to running from any IDE.
1.0.0-RC3
This release brings parity with Release Candidate 3 of the JUnit Platform. Most notably, its configurationParameters are supported through the plugin's DSL, exactly like the Java-based plugin.
Note: This release will be somewhat broken with current builds of Android Studio, up to & including 3.0 Beta 3. If you care about your unit tests running from inside the IDE directly, don't upgrade & stay at M6. See the README for more information on this.
1.0.0-M6
This release brings parity with Milestone 6 of the JUnit Platform, the last iteration before the first official RC of JUnit 5. This is a pretty incremental release without any new features to the Android plugin, so please make sure to read the Platform's release notes to get what's new in the M6 release.
1.0.0-M5
This release brings parity with Milestone 5 of the JUnit Platform. The plugin attempts to further bridge the gap between inconsistencies with bundled versions of JUnit 5 inside IntelliJ IDEA and Android Studio, trying to prevent these nasty NoSuchMethodErrors when the IDE expects an older milestone at runtime. Otherwise, it's mostly structural niceties which allow for automatic deployment. Also: Snapshots!
1.0.0-M4 Revision 3
This release improves classpath compatibility & inconsistent execution behavior between IDE and command-line builds further. Internally, the plugin moves away from its Java-based parent, and approaches the Android eco-system in terms of how the tasks are set up. Externally, no API changes have occurred from rev2.
1.0.0-M4 Revision 2
- Improve compatibility with Android Gradle Plugin 3.0.0
- Add junitParams() dependency handler for parameterized tests
- Hopefully mitigate classpath-related issues when running unit tests from the IDE
1.0.0-M4 Revision 1
- Added compatibility with Android Gradle Plugin 3.0.0 versions
- Included JUnit 4 by default, which allows AS builds w/o “class not found” errors
- Deprecated junitVintage() dependency handler, issuing a warning if you're still using it
- Both Jupiter & Vintage TestEngines are included on the runtime classpath by default