ata*_*oli 5 java testng automated-tests
我发现有两种方法可以在testng xml配置文件中读取参数:
使用@Parameter注释并在注释后定义参数名称
使用ITestContext作为供试类,DataProvider的或工厂和使用的参数getCurrentXmlTest()和getParameter()以读取参数.
出于任何原因,这些方式中的任何一种都是首选吗?还有其他办法吗?
我认为区别在于范围。如果我需要在我的所有测试套件中使用相同的参数,例如。<test> env 变量,我将在实现 ITestListener 或 ISuiteListener (用于套件范围)的侦听器中使用它,然后使用 ITestContext/Suitecontext 在以下或之下的所有测试中应用该值<suite>
但是,如果我需要特定测试用例的非常特定的参数,那么我会在这些特定的测试用例上使用 @Parameter 注释。
此外,@Parameter 只能采用简单的值,因此在某些情况下,您的测试可能需要基于某些参数值的不同对象(而不是字符串)。在这种情况下,我更喜欢数据提供者,读取参数值(你的第二个选项,尽管我认为测试类的参数不正确),创建对象然后将其提供给测试。(例如,属性文件的名称可能是一个参数值,它是根据属性文件中的数据读取和创建对象的,并作为不同的测试数据提供给测试)。
| 归档时间: |
|
| 查看次数: |
3282 次 |
| 最近记录: |