我有一个自动化套件,使用:Mstest、Specflow 和 Ranorex
正在测试的 WPF 应用程序很大,并且与 MS Word、浏览器、Sharepoint、Abobe 等许多应用程序交互。因此,自动化测试的流程有时会出现问题,并且测试会挂起。然后,此挂起时间将持续到 VS/MsTest 30 分钟默认超时到期,然后应用程序被终止并可以开始下一个测试。
我想减少这个等待时间。谷歌经常出现两个选项:
- 设置 [TestMethod, Timeout(x)]
- 编辑 Local.testsettings 测试超时值
但在这些条件下,这些似乎都不起作用,因为:
Specflow 忽略添加的任何 MsTest 属性,如下所示:
[TestMethod, Timeout(1000)] [When(@"I test")] public void WhenITest() { // some code }
“如果您使用 .testsettings 文件...不允许您从第三方测试框架运行测试。” 资源
因此我需要一个解决方法!似乎最好的方法是直接使用 Specflow 挂钩(如答案 3 中所建议的)。但是要将其实现到一个巨大的框架中并确保每个功能文件都添加了标签,这似乎可能会导致人为错误。
有没有人克服过类似的问题?