c# – 具有方案上下文的表中的规范使用参数

前端之家收集整理的这篇文章主要介绍了c# – 具有方案上下文的表中的规范使用参数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在C#中使用Specflow来构建自动客户端浏览器测试与Selenium.

这些测试的目标是模拟客户在特定页面进入我们网站的业务场景,
然后他被引导到正确的页面.

我想在场景背景下使用参数,
例如:

When I visit url
 | base                         | page      | parameter1       | parameter2     |
 | http://www.stackoverflow.com | questions | <questionNumber> | <questionName> |
Then browser contains test <questionNumber>

Examples: 
    | <questionNumber> | <questionName> |
    | 123              | specflow-q1    |
    | 456              | specflow-q2    |
    | 789              | specflow-q3    |

注意:步骤“当我访问url”使用base page parameter1 parameter2,创建url“base / page / parameter1 / parameter2”并转到此URL.

问题是在“我访问url”中的输入表是按原样传递文本,而不修改为示例部分中的等同项.

这意味着上述语法构建的表具有一个包含参数名称的数据的行:

http://www.stackoverflow.com,问题,questionNumber,questionName

而不是使用它们的价值:

http://www.stackoverflow.com,问题123,specflow-q1

你知道如何正确使用它?

解决方法

不可能混合数据表和场景轮廓.相反,我将重写您的方案如下:
When I visit the URL <base>/<page>/<questionNumber>/<questionName>
Then the browser contains test <questionNumber>

Examples: 
 | base                         | page      | questionNumber | questionName |
 | http://www.stackoverflow.com | questions | 123            | specflow-q1  |
 | http://www.stackoverflow.com | questions | 456            | specflow-q2  |
 | http://www.stackoverflow.com | questions | 789            | specflow-q3  |

在“当我访问URL”步骤定义时,您将从传入表参数(这是您正在做的)中构造URL.

虽然在“示例”部分中重复了“基础”和“问题”值,但是很清楚可以看到正在进行测试.非技术用户(例如业务用户)也将能够轻松地了解该测试正在尝试实现的功能.

原文链接:https://www.f2er.com/csharp/92160.html

猜你在找的C#相关文章