我有一个使用wallaby
库的测试套件,需要重量级的webpack构建才能使用。问题是我这个webpack构建太重了,不能在模型测试之前使用它,例如。
所以,我决定使用这个功能:
@tag :wallaby
这是最好的设计吗?我该如何实施呢?
答案 0 :(得分:0)
根据"Test Pyramid"你不应该进行很多UI测试,你应该很少运行它们,因为它们很慢且很昂贵。
一种方法是将wallaby
标记从单位测试中排除,方法是将其添加到test_helpers
:
ExUnit.configure exclude: [:wallaby]
现在运行mix test
在运行--include
之前不会运行任何UI测试:
mix test --include wallaby
这种方法比wallaby
标记之前的钩子更好,因为它是显式的,开发人员不会对长时间运行的构建和集成测试感到惊讶。
在mix.exs
中添加混合别名也可能是个好主意,它会启动webpack构建并运行小袋鼠测试。它将是可以在CI中使用的单个命令。