Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用Gradle将属性注入测试JVM?_Java_Testing_Gradle_Properties - Fatal编程技术网

Java 如何使用Gradle将属性注入测试JVM?

Java 如何使用Gradle将属性注入测试JVM?,java,testing,gradle,properties,Java,Testing,Gradle,Properties,我可以很容易地使用Gradle构建系统将类从执行中排除,但我不喜欢它是沉默的。我想要一个故障,必须在签入前修复 因此,我们对集成测试使用“*ITCase.java”命名约定,对单元测试使用“*Test.java”命名约定。以前有人使用“*ITest.java”,这导致集成测试在单元测试阶段运行。我们怀疑这在并行运行期间给我们带来了一些神秘的事务问题。我希望有一个测试在这种情况下失败。由于我们大量使用父类,因此似乎我们有一些方法来实现这一点 我的一个想法是将一个属性注入到测试JVM中,以便知道“测

我可以很容易地使用Gradle构建系统将类从执行中排除,但我不喜欢它是沉默的。我想要一个故障,必须在签入前修复

因此,我们对集成测试使用“*ITCase.java”命名约定,对单元测试使用“*Test.java”命名约定。以前有人使用“*ITest.java”,这导致集成测试在单元测试阶段运行。我们怀疑这在并行运行期间给我们带来了一些神秘的事务问题。我希望有一个测试在这种情况下失败。由于我们大量使用父类,因此似乎我们有一些方法来实现这一点


我的一个想法是将一个属性注入到测试JVM中,以便知道“测试”任务正在运行还是“集成测试”任务正在运行。检查该属性,如果错误则失败。我不知道该怎么处理Gradle

根据您正在使用的测试框架,您需要的可能是您自己的测试。您可以扩展默认类,检查带有反射的测试类的名称,如果它不符合您的要求,则测试将失败。我可能错了,但我更愿意避免像反射这样可能会减慢速度的事情。此构建已运行1小时14分钟。这是一个非常大的项目,这就是我们如何得到这种东西的。您的测试框架可能已经在使用反射了,我相信这不是导致执行时间长达一小时的原因。你有多少个测试?其中有多少是集成测试?所有测试是否由一个CI作业运行?您是否在每次更改时都运行它们?性能将在不同的线程中使用。重点是我们有10000个测试和100多个子组件,覆盖率为90%。它很大,需要表现出来,否则会影响到每个人。。。但也许自上次使用以来,反射性能变得更好了。如果有人使用它来设置只读状态的测试域对象,那将是一个gig。你能想象在每一次测试中使用它而不是模拟对象吗?嗯。。。这又引出了我忘记的另一点。他们坚持使用DAO的单元测试,IMHO的意思是将一些不属于DAO的逻辑放在DAO中。根据您使用的测试框架,您需要的可能是您自己的测试。您可以扩展默认类,检查带有反射的测试类的名称,如果它不符合您的要求,则测试将失败。我可能错了,但我更愿意避免像反射这样可能会减慢速度的事情。此构建已运行1小时14分钟。这是一个非常大的项目,这就是我们如何得到这种东西的。您的测试框架可能已经在使用反射了,我相信这不是导致执行时间长达一小时的原因。你有多少个测试?其中有多少是集成测试?所有测试是否由一个CI作业运行?您是否在每次更改时都运行它们?性能将在不同的线程中使用。重点是我们有10000个测试和100多个子组件,覆盖率为90%。它很大,需要表现出来,否则会影响到每个人。。。但也许自上次使用以来,反射性能变得更好了。如果有人使用它来设置只读状态的测试域对象,那将是一个gig。你能想象在每一次测试中使用它而不是模拟对象吗?嗯。。。这又引出了我忘记的另一点。他们坚持对DAO进行单元测试,IMHO暗示了将一些不属于DAO的逻辑放在DAO中的意图。