java - 如何将随机生成的测试数据从一个测试步骤传递到另一测试步骤

标签 java selenium

我们有一个自动化框架,它使用 Excel 工作表作为测试数据。 为了减少测试数据文件的创建工作,我使用了 Java fake 库来生成随机数据。我的问题是,我必须将这些随机生成的测试数据传递到其他测试步骤,将这些数据与数据库进行比较。 测试数据文件具有以下字段: 1.名字 2.姓氏 3.地址 4.订单号..等 这些数据是随机生成并输入网站的。

我尝试将所有随机数据存储在文本文件中。但我只是想避免读取 .txt 文件遍历每一行并将值与数据库进行比较。 文本文件看起来像 - 测试用例-1|名称-1|地址-1|订单 ID-1 测试用例-2|名称-2|地址-2|订单 ID-2 等等..

还有其他方法可以存储这些值并与数据库进行比较吗?

最佳答案

只需创建一个 bean:

public class TestData {

public static String FirstName;
public static String lastName;
public static String Address;
public static String orderid;
public static String getFirstName() {
    return FirstName;
}
public static void setFirstName(String firstName) {
    FirstName = firstName;
}
public static String getLastName() {
    return lastName;
}
public static void setLastName(String lastName) {
    TestData.lastName = lastName;
}
public static String getAddress() {
    return Address;
}
public static void setAddress(String address) {
    Address = address;
}
public static String getOrderid() {
    return orderid;
}
public static void setOrderid(String orderid) {
    TestData.orderid = orderid;
}

}

您可以使用直接变量,因为我已将它们公开或获取/设置。 由于变量是静态的,因此您可以使用 className 将它们称为目录

示例:

StepDefination1Class

TestData.setFirstName("Shubham");

或者

TestData.FirstName="Shubham";

在另一个类中使用相同的变量,如下所示:

StepDefination2Class

String Fname = TestData.getLastName();

或者

String Fname =TestData.FirstName;

关于java - 如何将随机生成的测试数据从一个测试步骤传递到另一测试步骤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58515401/

相关文章:

java - Spring @PropertySource动态设置路径

java - 在 Android 中打印 SQLite 数据库的所有行

java - Selenium webdriver 在页面更改后获取元素

Python: Selenium with PhantomJS 空页面源码

python - Selenium - 在检查 HTML 之前找不到可见元素?

java - ConcurrentIdentityWeakKeyHashMap 和整数键

java - 如何在 Android 上编辑谷歌日历事件?

java - 在 Mac OSX Lion 中运行 .jad 文件

selenium - Play framework + Selenium webdriver + cucumber sticks on the first http request

java - Selenium 中的“断言 True”概念