【问题标题】:How to implement SpecFlow "Scenario Outline" in MSpec如何在 MSpec 中实现 SpecFlow“场景大纲”
【发布时间】:2017-06-26 13:55:02
【问题描述】:

我的团队已经为我们的 BDD 测试框架选择了 MSpec,从他们目前的使用情况来看,它看起来非常好 - 但我正在努力使用文档/谷歌来寻找任何类似于 SpecFlow 的“场景大纲”的实现。我在下面展示了一个示例,但基本上它允许您编写一个“测试”并从输入/预期输出的表(示例)中多次运行它。如果答案结果是 LMGTFY,我会很尴尬,但我自己却找不到任何东西。我不想对团队说,如果我只是没有找到如何在 MSpec 中做到这一点(或正确理解 MSpec),这是不可能的。我想知道这是否就是为什么在 MSpec 的某些专业人士/反对人士中,我看到提到的类数量最终可能被列为负数。

SpecFlow 场景大纲示例

Scenario Outline: Successfully Convert Seconds to Minutes Table
    When I navigate to Seconds to Minutes Page
    And type seconds for <seconds>
    Then assert that <minutes> minutes are displayed as answer
Examples:
| seconds                       | minutes   | 
| 1 day, 1 hour, 1 second       | 1500      | 
| 5 days, 3 minutes             | 7203      | 
| 4 hours                       | 240       | 
| 180 seconds                   | 3         | 

发件人:https://gist.github.com/angelovstanton/615da65a8f821d7a43c92ef9e2fd0b01#file-energyandpowerconvertcalculator-feature

【问题讨论】:

    标签: mspec


    【解决方案1】:

    简短的回答,mspec 目前不支持此功能。几年前我们就计划好了,但是贡献从来没有回到 master 中。

    如果你想要场景大纲,要么使用不同的框架,要么在帮助类中创建参数化静态方法,然后从上下文类中调用这些方法。这将为每个场景留下 1 个班级。

    【讨论】:

    • 感谢 Alexander,这更像是试图了解我是否错过了 MSpec 的技巧。将提及您向团队强调的第二种方法。
    猜你喜欢
    • 2014-10-12
    • 2021-04-29
    • 1970-01-01
    • 1970-01-01
    • 2018-03-10
    • 1970-01-01
    • 2020-03-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多