我正在使用 TeamCity 进行测试和生产的自动化构建。 TeamCity 在流程结束时与 Gallio 一起运行我们的 mbUnit 3.1 测试。
运行测试构建时,Gallio 应尝试针对测试数据库服务器执行测试。但是,在运行生产构建时,不应运行这些测试,因为 TeamCity 无法访问生产数据库服务器(即使生产数据库可用,许多测试也会因未发布的代码而失败)。
如何标记测试,以便根据 IsDBOnline 等布尔值在 mbUnit 中忽略它?
创建 TestDecoratorAttribute 的子类并重写 Initialize() 方法来检查 IsDBOnline,如果为 false,则调用 Assert.Inconclusive()。
实现类似效果的另一种方法是向使用 Db 的测试添加 [Category] 属性,然后在生产环境中运行测试时将其过滤掉。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)