k66 pit计时功能配置_PIT,JUnit 5和Gradle –仅需额外的一行配置
k66 pit計時功能配置
在Gradle(帶有gradle-pitest-plugin 1.4.7+)中發現簡單,改進的PIT和JUnit 5配置。
不可否認,如今JUnit 5越來越受歡迎。 雖然為JUnit 5提供了一個專用于PIT的插件,并且gradle-pitest-plugin支持了很多年,但需要添加幾行樣板代碼來實現。 最近,我有一個[問題](https://github.com/szpak/gradle-pitest-plugin/issues/177),如果可以簡化的話。 我喜歡 接受挑戰 :-)。
使用“ buildscript {}”的通用方法
首先,看看帶有buildscrip {}代碼塊的通用方法,它記住了Gradle 0.x的時間:
buildscript {repositories {mavenCentral()gradlePluginPortal() //optionally, if any plugin is not available in Maven Central}configurations.maybeCreate('pitest')dependencies {classpath 'info.solidsoft.gradle.pitest:gradle-pitest-plugin:1.4.6'pitest 'org.pitest:pitest-junit5-plugin:0.12'} }apply plugin: 'java' apply plugin: 'info.solidsoft.pitest'pitest {testPlugin = 'junit5' }僅3條額外的行。 可接受的,但是用于插件配置的buildscript {}本身有點冗長。
(使用較舊的gradle-pitest-plugin)
帶有plugins {}的現代變體應更短:
buildscript {repositories {mavenCentral()}configurations.maybeCreate('pitest')dependencies {pitest 'org.pitest:pitest-junit5-plugin:0.12'} }plugins {id 'java'id 'info.solidsoft.pitest' version '1.4.6' }pitest {testPlugin = 'junit5' }不幸的是, plugin {}塊的緊湊語法由于需要在buildscript {}塊中添加運行時pitest-junit5-plugin使用的額外依賴項pitest-junit5-plugin而gradle-pitest-plugin了–額外增加了10行。 非常令人失望;-)。
和gradle-pitest-plugin 1.4.7+
使用剛剛發布的gradle-pitest-plugin 1.4.7,我們可以忘記所有樣板代碼:
plugins {id 'java'id 'info.solidsoft.pitest' version '1.4.7' }pitest {//adds dependency to org.pitest:pitest-junit5-plugin and sets "testPlugin" to "junit5"junit5PluginVersion = '0.12' }僅一行junit5PluginVersion = '0.12' ,它在pitest-junit5-plugin在所需版本中添加了pitest-junit5-plugin依賴關系,并將junit5激活為PIT使用的testPlugin 。 看起來不是很好嗎? :-)
摘要
在這篇簡短的博客文章中,我介紹了如何通過僅對插件本身進行一些更改就可以簡化PIT,JUnit 5和Gradle(-pitest-plugin)的配置。 感謝John Scancella提出的問題,以及我想到如何以智能方式實施它的想法。
因此,我鼓勵您報告(明智的)改進建議和限制您使用的項目的想法(或者在與維護人員進行初步討論后甚至提出更好的合并請求)。 也許它將實現(接受)以實現共同利益:-)。
翻譯自: https://www.javacodegeeks.com/2020/03/pit-junit-5-and-gradle-with-just-one-extra-line-of-configuration.html
k66 pit計時功能配置
總結
以上是生活随笔為你收集整理的k66 pit计时功能配置_PIT,JUnit 5和Gradle –仅需额外的一行配置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信怎么设置二级密码(微信怎样设置二级密
- 下一篇: oidc auth2.0_将Auth0