如何在Jemmy http://java.net/projects/jemmy中启动多个测试类。我尝试使用这样的代码,但它不起作用。它只启动一个测试。
public class Controller {
public static void main(String[] args) {
try {
Class[] testClasses=AllClassesInPackageFinder.getClasses("test");//finds all classes in package with test.
String[] classFullNames= new String[testClasses.length];
for (int i=0; i<testClasses.length; i++){
classFullNames[i]=testClasses[i].getName();
}
org.netbeans.jemmy.Test.main(classFullNames);
} catch (ClassNotFoundException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
} catch (IOException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
}
}
答案 0 :(得分:0)
您应该用于测试执行的是测试工具,例如JUnit或TestNG。
Jemmy本身不是测试工具。
答案 1 :(得分:0)
如果您创建一个名为¨Suite的单独类,您可以在其中定义测试的顺序以及应执行哪些类。这里有一个例子:
public class Suite {
public static Test suite() {
NbModuleSuite.Configuration conf = NbModuleSuite.emptyConfiguration().
addTest(CreateNewProjectTest.class, "testCreateProject").
addTest(AddingElementsTest.class, "testOpenExistingProject", "testOpenTestcase",
"testAddElement1", "testAddElement2", "testAddElement3", "testPressOk").
addTest(OtherClassWithSomeTest.class, "test1", "test2", "test3",
"test4", "test5", "test6", "test7", "test8");
return conf.clusters(".*").enableModules(".*").honorAutoloadEager(true).suite();
}
}
如您所见,您可以定义类的顺序(第一个添加的将是第一个执行的),在每个类中,您也可以定义每个方法的顺序。