是否可以在所有behat测试中列出所有标签?

时间:2016-04-07 15:18:27

标签: tags behat

我有几百个使用不同标签的人创建的behat测试。我想清理它,首先我要列出到目前为止使用过的所有标签。

1 个答案:

答案 0 :(得分:3)

我想回答我自己的问题,因为这是我在其他地方找不到的答案。

我最初尝试使用自定义格式化程序,但这不起作用。 https://gist.github.com/paulmozo/fb23d8fb436700381a06

最终我制作了一个Bash命令以满足我的目的

waitfor time '22:00';

declare @timer datetime
declare @time float
declare @query nvarchar(max)

set @query = N'select ...'
set @timer = getdate()
exec sp_executesql @query
set @time = datediff(ss,@timer,getdate())

这将运行带有bin/behat --dry-run 2>&1 | tr ' ' '\n' | grep -w @.* | sort -u 的behat命令,该命令不执行测试,只输出步骤以便将它们传输到另一个工具。 --dry-run将标准错误重定向为null(这取决于shell)。 2>&1工具将流中的每个单词分成一个单独的行。 grep搜索以@符号开头的行。最后tr对列表进行排序并返回唯一身份。

此命令运行大约需要15秒,并且完美地完成了我的工作。