我有一个方案来验证100个员工姓名,QueryString将以xml格式返回它们。我想要做的是验证Assertion语句中的所有员工姓名,如下所示。而不是在场景大纲示例中添加每个名称,是否可以发送100个员工姓名的列表作为输入,以便我可以在java中迭代它们并且可以轻松地在断言条件中进行验证。请指教。
Scenario Outline: When the User queries for employee information, the correct records are returned
Given the webservice is running
When the User queries for employee information "<QueryString>"
Then the User receives correct data "<Name>"
Examples:
|QueryString|Name|
|Some localhost url|Peter|
|Some localhost url|Sam|
.
.
@Then("^the User receives correct data\"([^\"]*)\"$")
public void the_user_receives_correct_data(String arg1) throws Throwable {
queryResultPage = selenium.getPageSource();
assertTrue(queryResultPage.contains(arg1));
}
答案 0 :(得分:0)
所以我将回答LINGS评论 您可以做的是,在步骤定义中使用这些文件名来加载代码中的文件。据我所知,黄瓜不支持直接加载文件。 我使用这样的东西找到我的相对路径文件名的完整ressource pathes:
public static String getAbsoluteResourcePath(String resourcePath) {
if (SystemUtils.IS_OS_WINDOWS) {
return Utils.class.getResource(resourcePath).getPath().substring(1).replace("/", File.separator);
} else {
return Utils.class.getResource(resourcePath).getPath().replace("/", File.separator);
}
}
然后,resourcePath应该是您的相对文件路径
答案 1 :(得分:0)
您要寻找的是外部测试数据支持,QAF支持该功能。您可以将任何inbuilt data provider与interceptor一起使用来修改数据集或custom data provider。
如果您使用的是黄瓜5+版本,则可以使用qaf-cucumber,它将为您提供黄瓜的所有qaf功能。对于lower version,您可以使用QAF运行程序运行现有的功能文件。