我怎么能忽略behat中的功能?

时间:2016-01-05 21:04:15

标签: laravel bdd behat

我正在使用behat laravel。 我有一些我想在测试中忽略的功能。 所以我有内部功能文件夹:
  - a.feature
  - b.feature
  - c.feature

我想从测试中排除功能c。目前,如果我想从测试中排除特征c,我必须重命名它 - 例如“c.feature.tmp”。
是否有一些更智能的方式...像在java或.NET中我们有@Ignore注释。

2 个答案:

答案 0 :(得分:3)

您可以提供您不想测试@notesting标记的功能,然后运行如下。

behat --tags '~@notesting'

~符号是NOT运算符。

或者像@ grzegorz-zadja提到的那样你也可以使用test suites

在功能正上方的功能文件中:您可以添加标签。只需在那里添加@notesting即可。请参阅documentation

答案 1 :(得分:1)

标记过滤器支持三个逻辑运算符:

commas分隔的标签将使用OR操作进行组合 由&&分隔的标签将使用AND操作进行组合 使用~操作

排除前面带有NOT的标记

例如:

  • $ behat --tags '@orm,@database'
  • $ behat --tags 'ticket,723'
  • $ behat --tags '@orm&&@fixtures'
  • $ behat --tags '~@javascript'
  • $ behat --name 'number has'

第一个命令将仅运行具有@orm OR @database标记(或两者)的功能或方案。

第二个命令将仅运行具有@ticket OR @723标记(或两者)的功能或方案。

第三个命令将仅运行包含@orm@fixtures标记的功能或方案(必须同时包含两者)。

第四个命令将运行未标记为@javascript的所有功能或方案。 (除了那些标记为@javascript

的所有内容

第五个命令将仅运行标题中包含number has的功能和方案。

gherkin filters

相关问题