java - TestNG - 在测试类之间共享状态

标签 java testng

我有一个 我通过 testng.xml 文件运行的测试类套件。这很好用。所有测试都是串行运行的,因此没有并行执行障碍。

我现在的目标是获取由一个测试类中的测试方法生成的状态(例如,由数据库插入生成的 customerId 主键值)并将其传递给另一个测试类,以便第二个类中的测试方法可以根据该共享状态采取进一步的操作(例如,使用第一个类中的 customerId 值查找刚刚插入的客户)。

在单个类中的测试方法之间共享状态很容易,当然,通过类成员变量,但我不知道如何在测试类之间共享它。

最佳答案

真正的 Testng-y 方法是将 ITestContext 属性设置为所需的值,然后从其他测试类获取它。

设定值:

@Test
public void setvaluetest(ITestContext context) {
        String customerId = "GDFg34fDF";
        context.setAttribute("customerId", customerId);
}

获取值(value):

@Test
public void getvaluetest(ITestContext context) {
        String id = context.getAttribute("customerId");
}

关于java - TestNG - 在测试类之间共享状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24766147/

相关文章:

java - Java 中的可逆资源修改

java - 用 netty 发送后我无法转换我的对象

java - 为什么我们有抽象类时还需要接口(interface)?

java - 使用 TestNG 在不同浏览器上进行 Selenium 测试

java - 配置失败: @BeforeClass setUp org.mockito.exceptions.base.MockitoException:无法初始化@Spy注释字段 'allRequestParams'

intellij-idea - Intellij 在 TestNG 中运行一项测试

java - 在网络服务之间共享数据的最佳方式

java - 在 Java 程序中运行命令行工具

java - 使用C++获取Java对象调用Java方法

java - 如何在selenium和testng中打印异常