可以有条件地打开或关闭特定的健身测试吗?
在Fowler/Hodgson 术语中,我们使用“发布切换” - 即允许在我们的测试和专业环境中禁用更改直到准备好黄金时间的切换。我们不希望这些功能的故障影响到 pro 的发货,因此对这些测试的结果不感兴趣。从这个意义上说,CDP 管道一直将切换设置为“PRO”配置,以保持验收测试的快速和集中。那么如何让 Fitnesse 忽略与切换相关的测试呢?
我看到了这个相关的答案:如何在持续集成中运行的测试中设置功能切换?这表明该用户测试了切换的所有方面,但这对我们来说通常是不可能的 - 例如,假设由于 DI 或其他原因,某个功能需要重新启动应用程序才能更改切换(例如,因为该功能需要连接不同的 Web 控制器) - 这对fitnesse 来说是一件相当困难的事情。这会导致缓慢的测试,并且正在测试我们实际上不需要测试的功能(还)。
因此,我们希望能够开发功能(在切换后)和测试、夹具(标有相同的切换),并且当我们准备好启用它们时,轻弹它们以通过 CI 管道运行。就像是:
- 决定功能需要切换,因此创建一个 TOG123-change-api-behaviour
- 将切换添加到所有代码都可以看到的中央切换系统
- 在 CI 环境的配置中将切换设置为“false”
- 开发切换代码背后的功能和适应性测试
- 当准备好 CDP 设置为 true
- 通过测试后,运送给专业人士
- 及时..通过字面搜索 TOG123 并清理混乱来删除切换..
我没有看到一个好的答案是如何保护特定的fitnesse测试条件(即新测试将有一个when:TOG123.enabled,旧测试将有一个when:TOG123.disabled)。Fitnesse 似乎有点.. 对我来说很尴尬。标签是我要找的吗?套房似乎太宽泛了..