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-plugingradle-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 –仅需额外的一行配置相关推荐

  1. PIT,JUnit 5和Gradle –仅需额外的一行配置

    在Gradle(带有gradle-pitest-plugin 1.4.7+)中发现简单,经过改进的PIT和JUnit 5配置. 不可否认,如今JUnit 5越来越受欢迎. 虽然为JUnit 5提供了一 ...

  2. 关于安卓如何实现计时器chronometer的暂停和继续计时功能

    安卓的Chronometer组件的基本函数有setBase,设置基础计时点.暂停和继续计时关键是通过设置基础计时点来实现的.当用户点击暂停的时候获取Chronometer从开始到当前暂停所用的时间,即 ...

  3. 【Python程序计时】使用time模块实现计时功能

    [Python程序计时]使用time模块实现计时功能 在Python中经常需要对程序运行时间进行掌控,一般使用time模块进行计时: import timestart = time.perf_coun ...

  4. 命令行界面命令模式及相互切换、交换机命令行操作模式及模式间的切换过程、命令行界面基本功能、命令的快捷键功能、交换机基本配置命令、交换机特权模式下基本命令、交换机全局配置模式下基本命令、

    1.命令行界面命令模式及相互切换   锐捷交换机命令行管理界面分成若干不同的模式,用户当前所处的命令模式决定了可以使用的命令,不可跨模式执行命令.以下给出三种基本模式.   用户模式(User EXE ...

  5. Android Mp3格式录音,含有暂停,计时功能

    Mp3录音,边录边转: 博主前端时间做的项目,遇到关于android录音相关的问题.由于android系统自带的录音Audiorecord录制出来的文件格式为PCM,或者简单的加上WAV头文件,转换成 ...

  6. Java实现代码计时功能(Spring计时工具类--StopWatch学习总结)

    使用场景 计算某段程序的执行时间.计算每段线程所耗时间.计算方法调用的执行时间,等等. 传统方式 使用java代码实现计时功能 long startTime = System.currentTimeM ...

  7. 实现倒计时/正计时功能 moment

    实现倒计时/正计时功能 moment 现在已知一个毫秒时间,根据这个时间进行倒计时/正计时,借用moment插件,我们平常进行时间转换的时候,是为了获得当前时刻,比如以下的例子: let a= new ...

  8. 51单片机实现LED数码管0-9999秒的计时功能

    标题51单片机实现LED数码管0-9999秒的计时功能 一.实现原理: P0口给高低电平控制LED灯亮暗,来显示数字: 74HC138实现数码管高低电平状态,循环实现数码管动态扫描显示. LED1-L ...

  9. gatling的环境配置_将Gatling集成到Gradle构建中–了解SourceSet和配置

    gatling的环境配置 我最近在一个项目中工作,我们不得不将出色的负载测试工具Gatling集成到基于Gradle的版本中. 有可用的gradle插件使此操作变得容易,其中有两个是this和this ...

最新文章

  1. 必备 | 人工智能和数据科学的七大 Python 库
  2. python打开json文件变为字典_Python json读写方式和字典相互转化
  3. saiku+kettle整合(二)数据装载
  4. kettle中通过 时间戳(timestamp)方式 来实现数据库的增量同步操作(一)
  5. 京东智联云分布式低延时RTC系统
  6. java如何实现Socket的长连接和短连接
  7. elementui表单校验原始密码_javascript 中入门数据校验
  8. js网页文件资源加载器
  9. php写入word文档内容,如何在PHP中读取和写入WORD文档
  10. 程序员面试宝典——第6章
  11. Python实现PDF复制自动去除换行及空格
  12. 重装Windows 10系统
  13. Spring boot 2 雷神
  14. 计算机网络 路由协议的配置_瑞尔森大学计算机网络专业
  15. 怎样做自媒体视频剪辑赚钱?
  16. win10如何安装mysql_win10安装mysql详细步骤
  17. P5.JS绘制动态图形
  18. Quantopian教程系列四
  19. 数据结构与算法 — 环形队列
  20. 高德地图定位及显示位置

热门文章

  1. Codeforces Round #732 (Div. 1Div. 2)
  2. 【每日一题】7月16日题目精讲—点权和
  3. ATcoder-Replace Digits【线段树】
  4. P5004-专心OI - 跳房子【dp,矩阵乘法】
  5. jzoj1610(初中)-导弹【最大匹配,最短路,二分答案】
  6. P1156-垃圾陷阱【dp】
  7. P1313-计算系数【组合数,二项式定理】
  8. 有上下界网络流问题汇总
  9. 面试官问:如果MySQL引起CPU消耗过大,你会怎么优化
  10. Memcached:列出所有Key