如何从另一个java类运行测试类
我有3个java测试类。 1.ListenerTest1.java 2.ListenerTest2.java 3.ListenerMain.java 上面两个testfixture类,即ListenerTest1.java和ListenerTest2.java,都有测试方法。 另外,将build.gradle文件设置为:-如何从另一个java类运行测试类,java,gradle,testng,hudson,Java,Gradle,Testng,Hudson,我有3个java测试类。 1.ListenerTest1.java 2.ListenerTest2.java 3.ListenerMain.java 上面两个testfixture类,即ListenerTest1.java和ListenerTest2.java,都有测试方法。 另外,将build.gradle文件设置为:- task automationTests(type: Test) { systemProperty 'serviceType', System.properties
task automationTests(type: Test) {
systemProperty 'serviceType', System.properties['serviceType']
useTestNG {
useDefaultListeners = true
suiteXmlBuilder().suite(name: 'Testing case') {
test(name: 'ServiceUITests', annotations: 'JDK', verbose: '1') {
classes([:]) {
'class'(name: 'company.platform.ListenerMain')
}
}
}
}
}
因此,在运行我的hudson作业时,它调用任务,即automationTests,并运行我的ListenerMain类。
我需要在ListenerMain类文件中添加if/else条件,它将根据hudson作业中添加的System.property来区分运行上述两个类中的任何一个,即ListenerTest1.java或ListenerTest2.java
例如
根据if/else条件加载类需要添加哪些代码?
如果需要,我可以在ListenerMain类中添加main方法 您可以在if/else代码中添加以下代码。在
runClasses
方法中,您可以指定测试类
Result result = JUnitCore.runClasses(ListenerTest1.class);
TestNG中有两个选项:
您的注释转换器将测试该条件,然后在不满足该条件的情况下覆盖@test注释以添加属性“enabled=false”。参考此信息您可以共享ListenerTest1和ListenerTest2吗?它们实现了什么接口?两个类中都没有使用接口。它是一个简单的TestFixture类,由使用TestNg注释的测试用例(测试方法)组成。@Jobin:JUnitCore在我使用TestNg时对我有用吗?请参考此URL。。如果我使用TestNg,这将有助于解释为什么使用JUnitCore?TestNg是按照JUnit和NUnit的思路开发的一个测试框架,我认为你可以使用JUnitCore实现这一目的。如前所述,我有两个不同的类,即ListenerTest1和ListenerTest2,所以我需要从ListenerMain类调用整个类。我认为如果一个类由不同的组和方法组成,上面的链接会有所帮助。
Result result = JUnitCore.runClasses(ListenerTest1.class);