我有几种测试方法,我需要选择其中一些作为烟雾测试和其他回归测试。我如何在Testng selenium中创建条件/依赖,因此烟雾测试将首先作为一组运行。我可以为回归测试设置不同的Bamboo作业,只有在测试组通过后才能运行。
我的测试是:
@Test(priority=1)
public void test_1(){
----}
@Test(priority=2)
public void test_2(){
----}
@Test(priority=3)
public void test_3(){
----}
@Test(priority=4)
public void test_4(){
----}
@Test(priority=5)
public void test_5(){
----}
这里,test_1到test_3是烟雾测试。所以,如果他们通过其他人将被执行。我怎么能这样做?
答案 0 :(得分:1)
您可以使用groups和dependsOnGroups注释来实现此目的。文档中的示例非常好。基本上你可以尝试这样的事情:
@Test (groups = {"smokeTest"}, priority=1)
public void test_1() {...}
// add the same annotations for test_2 and test_3
@Test (groups = {"regressionTest"}, dependsOnGroups = {"smokeTest"}, priority=4)
public void test_4() {...}
@Test (groups = {"regressionTest"}, dependsOnGroups = {"smokeTest"}, priority=5)
public void test_5() {...}
这样,只有在测试1,2和3通过时,才会执行测试4和5。如果您需要更精细的控制,可以考虑使用testng.xml来设置测试套件等。
至于在Bamboo中设置作业,取决于您使用的构建工具。 Atlassian社区的这个post可能对您有所帮助。
希望这会有所帮助。