我有一个用于Selenium测试的单行Js,用于检查页面是否已完成加载。
true === ((typeof Ext.Ajax != 'undefined' && Ext.Ajax.isLoading()) || (jQuery != 'undefined' && jQuery.active) || document.readyState != 'complete')
所有其他Java / Selenium检查方法 NOT 与我们的IE FF和Chrome测试设置行(crap IE)兼容。我们花了3个月的时间尝试,所以Selenium检查是不可能的。 大多数情况下这个检查都没问题,除非在该页面中未设置Extjs变量,然后我得到可怕的Ext未定义的异常并且selenium崩溃。 是否有另一种方法来检查一个衬里中的变量,它可以进行嵌套检查我尝试了对象检查,如
javascript test for existence of nested object key
但是当我做的时候
((Ext || {})。Ajax
我仍然得到例外。
答案 0 :(得分:1)
当我阅读其他帖子时,我遇到了一个解决方案:
(typeof Ext != 'undefined' ? Ext : {})
答案 1 :(得分:1)
这也应该有效:
(window.Ext || {}).Ajax