2012-03-09 29 views
2

如果这是一个明显的问题,请道歉。 我使用webdriver支持的selenium编写了一些Java测试 - 这些测试在单独运行时都运行得非常完美。 我现在想在testSuite中一起运行这些选择。从我迄今发现的建议得到了以下内容:在Webdriver中创建测试套件

package my.package; 
import junit.framework.Test; 
import junit.framework.TestCase; 
import junit.framework.TestSuite; 

public class My_TestSuite 

public static Test suite() { 
suite.addTestSuite(US298.class); 
suite.addTestSuite(US111.class); 
//etc 
return suite; 
} 
public static void main (String[] args) { 
junit.textui.TestRunner.run(suite()); 
} 
} 

我得到这个从尝试到现有的测试套件从硒IDE出口,试图给我一个想法,如何做到这一点但它没有帮助! 任何帮助非常感谢 - 非常感谢。

+0

您遇到的实际错误是什么?你能举一个你的测试的例子吗?你在使用JUnit 3或4,那就是你的测试类扩展了TestCase,还是用@Test注解的方法? – 2012-03-09 12:31:24

+0

我的测试用例用@Test注释,而我用的是JUnit 4 - 我在“addTestSuite”位上得到一个错误 - 它表示TestSuite类型中的方法addTestSuite(Class <?extends TestCase>)是不适用于参数(类别)'是否能够释放更多的光线? – 2012-03-09 14:28:23

回答

3

在您对有关使用JUnit 4的评论之后,问题在于您实际上是在使用JUnit 3样式测试套件和JUnit 4测试。您需要使用JUnit 4 Suite。这有以下格式:

@RunWith(Suite.class) 
@SuiteClasses({ Test1.class, Test2.class }) 
public class AllTestsSuite { 
} 

junit.framework.*类是JUnit 3中,和org.junit.*类是JUnit 4中

+0

非常好,谢谢! – 2012-03-09 15:28:57

+0

嗯。我有一个类似的问题 - 我使用“将测试用例导出为... Java/JUnit 4/WebDriver”从IDE(v 2.9.1)导出我的套件。我添加了RunWith和SuiteClasses,但随后发现(在另一个问题的帮助下)测试类(编译并自行运行OK)必须扩展junit.framework.TestCase JUnit 4导出不是真的可用吗? – 2016-08-08 08:07:17

1

我使用TestNG的套房看到在3.textng.xml

doc 它很容易使用

例子:

<test name="init"> 
    <classes> 
     <class name="com.example.Setup" /> 
     <class name="com.example.Login"/> 
    </classes> 
</test> 
<test name="myTests"> 
    <packages> 
     <package name="com.example.tests"/> 
    </packages> 
</test> 

你将不得不调整测试的TestNG的当然,但那很容易完成。 我也建议你使用webdriver测试,而不是webdriver支持,但多数民众赞成只是我的看法。

0

@tarken

当您使用TestNG的,你写的代码执行和调用测试套件考虑这个作为上述示例代码的示例

package my.package; 
import junit.framework.Test; 
import junit.framework.TestCase; 
import junit.framework.TestSuite; 

public class My_TestSuite 

public static Test suite() { 
suite.addTestSuite(US298.class); 
suite.addTestSuite(US111.class); 
//etc 
return suite; 
} 
public static void main (String[] args) { 
junit.textui.TestRunner.run(suite()); 
} 
} 
相关问题