作为一组编码的UI测试的一部分,单击一个菜单。但是,菜单(使用Javascript)无法加载菜单选项。当我手动运行测试时,菜单工作正常。如果我在测试运行时刷新页面(或重新启动浏览器),则会加载菜单选项。
但更奇怪的是,这只发生在远程测试环境中。当我在我自己的机器上本地运行测试时,即使编码的UI测试正在执行测试,菜单也可以工作。
我完全不明白为什么菜单不能加载。编码的UI测试是否会阻止Javascript执行(加载菜单选项)?但是为什么当我刷新页面时它仍然起作用呢?
比较我自己的环境和测试环境--我看不出有什么不同。我正在测试完全相同的web应用程序( URL指向相同的web服务器)。这是相同版本的Internet Explorer,所有的设置都是相同的,我可以看到。同样的操作系统(Windows7)。
有什么想法吗?
需要注意的一件事是,测试在IE7文档模式下运行良好--尽管这里的Javascript行为可能会有所不同。目前,我已经在IE9文档模式下对web应用程序运行了测试。将文档模式更改为Quirks模式也允许测试在某些情况下工作,但仅适用于少数几个测试。
发布于 2012-08-23 01:37:06
我已经找出了原因,因为我一直在IE9兼容模式和IE9文档模式下记录测试。使用VS2010进行的动作录制不支持IE9文档模式。
但是,即使我在远程环境上测试回放期间将文档模式切换到IE8文档模式,浏览器对话框也会失败。
因此,这个问题没有真正的解决方案。
此外,由于这个原因,我要反驳微软关于编码的UI测试与IE9 (甚至与VS2010 SP1)兼容的说法。
因此,我别无选择,只能等到VS2012编码的UI测试工具(假设它完全支持IE9 )之后,才能测试任何具有浏览器对话框或JavaScript菜单的网页。
发布于 2012-09-25 05:25:43
我遇到了一个类似的问题-当测试代理运行的编码UI测试试图操纵它(VS2010,IE9标准)时,我页面上的一些高级javascript就会失败。
当切换到兼容模式(IE9兼容/IE7文档模式)时,我们刚刚解决了一个不同的问题-控件的内部文本发生了显著变化,这破坏了我们的搜索/过滤器属性。
更新了这些属性,测试现在可以在兼容模式下在VM上正常工作,或者在我的机器上以IE9标准正常工作。
https://stackoverflow.com/questions/11970572
复制相似问题