如何创建TestNg类

时间:2015-04-03 07:09:17

标签: java testng appium

我需要帮助创建一个testng`` scipt ..

我创建了一个只包含@beforesuite的类,其中包含打开应用程序的命令

@beforesuite

和第二类包含3个方法

 @test{method1}
 @test{method2}
 @test{method3}

和第三类包含关闭应用程序的@AfterSuite ......

@AfterSuite

如何编写一个xml文件来一个接一个地运行这些类.. ??

有没有更好的方法来编写脚本???

任何建议都会有所帮助。

提前致谢。

Sudhanva

3 个答案:

答案 0 :(得分:0)

只需将这些类放在测试套件文件中,testNG将负责运行首先包含@BeforeSuite的类,然后运行具有@test next的类,然后运行具有@aftersuite标记的类。

<suite>
<test name ="myTest">
<classes>
<class name ="Class1"/> <!-- Class with @beforeSuite-->
<class name ="Class2"/> <!-- Class with @test-->
<class name ="Class3"/> <!-- Class with @afterSuite-->

</classes>
</test>
</suite>

顺便说一下,为什么要为@AfterSuite和@BeforeSuite方法设置不同的类。如果所有人都在同一个班级,那会更简单。但这只是我的想法。

答案 1 :(得分:0)

我建议如下:

  1. 请仔细阅读link,这是一份非常详细的TestNG文档。您可以设置优先级&#39;测试注释的属性。

    //this decides the order in which your tests are executed        
    @test{priority=1} //executed first        
    @test{priority=2} //executed second        
    @test{priority=3} //executed third
    
  2. 由于这看起来像关键字驱动的框架,我建议您从Excel工作表中传递类名而不是实现XML解析器。

  3. 要实现excel表读/写,Apache POI是一个非常好的库。它支持xls和xlsx文件。这样修改执行顺序也很容易。有关关键字驱动框架的详细信息,请参阅此link

  4. 就报告结构而言,TestNG可能会生成自己的报告,但ATU Graphical Reporter具有良好的视觉吸引力。

答案 2 :(得分:0)

这是如何在XML文件中提及您的测试:

<?xml version="1.0" encoding="UTF-8"?>
<suite name="SuiteName" verbose="1" data-provider-thread-count="10"
    thread-count="10">
    <test name="TestName" thread-count="10">
        <classes>
            <class name="packageName.ClassName"/>
            <class name="packageName.ClassName" />
        </classes>
    </test>
</suite>