背景 我们有一个使用Selenium和Firefox Web驱动程序运行功能文件的测试框架。 在Firefox下运行时,所有功能文件都会通过测试。 对于测试运行者,我们在开发人员/ QA本地计算机上使用SpecFlow,在CI服务器上使用SpecRun。 正在测试的网站是用经典的ASP.NET编写的。
要求: 我们希望在Internet Explorer 11下传递功能文件测试。
方法 获取要素文件测试以使用SpecFlow和SpecRun
传递本地计算机机器准备:
所有要素文件都在使用 SpecFlow
运行的本地计算机上传递问题: 使用 SpecRun 运行时,本地计算机上的相同功能文件为FAIL。问题是EnableNativeEvents = false似乎被忽略,点击不起作用。我也在CI服务器上进行了测试,功能文件也在那里失败了。
点击搜索按钮的功能文件步骤适用于SpecFlow
点击搜索按钮的相同步骤在SpecRun中不工作(注意:搜索按钮具有焦点)
Selenium是与网站交互的组件。 SpecFlow和SpecRun只是测试运行者。 这可能是什么问题?
提前感谢您的时间。
答案 0 :(得分:0)
您已经提到Dev / QA本地计算机运行Specflow,CI计算机运行SpecRun。 Dev / QA本地机器是否也使用SpecRun作为单元测试运行器?
如果没有,请尝试在CI计算机上使用相同的测试运行器,看看是否能解决问题。值得一试。
答案 1 :(得分:0)
我假设您希望在通过CI启动它们时以无人参与模式运行所有测试。为了使IE在这种情况下更好地工作,您可以添加其他功能。
capability.setCapability(InternetExplorerDriver.REQUIRE_WINDOW_FOCUS,true);
这违反了自动化标准,但是当它得到关注时IE非常有效。