【问题标题】:Ignore a feature on pre condition忽略前提条件下的特征
【发布时间】:2019-05-01 08:52:48
【问题描述】:

我的功能有 4-5 个场景,所有场景都取决于页面上是否存在某个元素。例如用户名、密码字段。

如何根据这种情况跳过/忽略整个功能。下面的一些是我为跳过场景而编写的。

public void skipScenario(String message, Scenario scenario){
        if (username==null){
        Assume.assumeTrue(false);
      }
    }

就像Scenario接口一样,我们有Feature类有几个实现,我不知道哪一个有跳过它的功能。

【问题讨论】:

  • 你当然可以按照你的建议去做。但你为什么想要?您必须明确说明每个场景的输入数据,以便在场景定义时知道用户名为空。如果您需要测试应用程序是否正确响应,只需为这种情况提供一个单独的场景。见cucumber anti-patterns。

标签: junit cucumber cucumber-jvm


【解决方案1】:

来自Cucumber docs:“每个场景都应该测试一件事并由于一个特定原因而失败。这意味着没有理由跳过步骤。

如果您确实希望有条件地跳过步骤,那么您可能有一个反模式。例如,您可能试图在一个场景中测试多个事物,或者您可能无法控制测试环境或测试数据的状态。

最好的办法是解决根本原因。”

【讨论】:

    猜你喜欢
    • 2018-04-11
    • 1970-01-01
    • 2017-04-01
    • 1970-01-01
    • 2015-12-27
    • 2013-05-02
    • 1970-01-01
    • 2019-12-17
    • 2021-11-06
    相关资源
    最近更新 更多