我在一个功能文件中提到了5-6个小场景。随着我们进行更高级的事情,现在需要将所有这些场景结合起来,并为不同的实体提供场景轮廓。请指导我,如果这是一个好的做法。
发布于 2019-01-29 21:06:48
我不建议在一个场景中对5个不同的函数进行测试。这将很难调试并找出出错的原因。如果另一个开发人员/测试人员必须管理测试结果,这将是相当困难的。
如果你真的想这样做,你可能想看一下场景概述和例子。看看ToolsQA网站上的一些很好的例子。https://www.toolsqa.com/specflow/data-driven-testing-using-examples-keyword-in-specflow/
您可以从examples表中读取关键字,这将触发您想要测试的特定流/函数。这很快就组合在一起了:
Scenario Outline: Test 5 different functionalities
Given i am at the Home Page
And Navigate to LogIn Page
When i trigger <function> with variables <var1>, <var2> and <var3>
Then Success message <message>
Examples:
| function | message | var1 | var2 | var3 |
| registration | Yes this was succesfull | username1 | pw | pw |
| forgotpassword | Something went wrong | email | notrelevant | notrelevant |
[When(@"i trigger (.*) with variables (.*), (.*) and (.*)")]
public void WhenUserEnterAnd(string function, string var1, string var2, string var3)
{
switch (function)
{
case "registration":
RegistrationFlow(var1, var2, var3);
break;
case "forgotpassword":
ForgotPasswordFlow(var1)
break;
}
}
private void ForgotPasswordFlow(string email)
{
//do stuff for forgotpassword
}
private void RegistrationFlow(string username, string password1, string password2)
{
//do stuff for registration
}https://stackoverflow.com/questions/54350098
复制相似问题