首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在功能文件中组合所有场景

在功能文件中组合所有场景
EN

Stack Overflow用户
提问于 2019-01-24 23:28:30
回答 1查看 41关注 0票数 0

我在一个功能文件中提到了5-6个小场景。随着我们进行更高级的事情,现在需要将所有这些场景结合起来,并为不同的实体提供场景轮廓。请指导我,如果这是一个好的做法。

EN

回答 1

Stack Overflow用户

发布于 2019-01-29 21:06:48

我不建议在一个场景中对5个不同的函数进行测试。这将很难调试并找出出错的原因。如果另一个开发人员/测试人员必须管理测试结果,这将是相当困难的。

如果你真的想这样做,你可能想看一下场景概述和例子。看看ToolsQA网站上的一些很好的例子。https://www.toolsqa.com/specflow/data-driven-testing-using-examples-keyword-in-specflow/

您可以从examples表中读取关键字,这将触发您想要测试的特定流/函数。这很快就组合在一起了:

代码语言:javascript
复制
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
  }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54350098

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档