Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 等待ExtJS对话框加载Selenium_Java_Extjs_Selenium_Webdriver - Fatal编程技术网

Java 等待ExtJS对话框加载Selenium

Java 等待ExtJS对话框加载Selenium,java,extjs,selenium,webdriver,Java,Extjs,Selenium,Webdriver,当使用Selenium(WebDriver)测试ExtJS应用程序时,我有一个按钮可以打开一个对话框。然后,测试会填写一些表单字段、单击按钮等。问题是selenium在对话框完全构建完成之前就开始执行这些操作 我知道我可以告诉硒等待一个特定的元素出现,但是如果我想把这个案例推广到“等待对话框完成加载”,有没有办法做到这一点呢? < P>简短的回答是,“不,没有简单的方法来做这件事”。是在下载最后一个关闭标签时吗?当它被解析并添加到DOM中时?是当文档readyState属性为“交互式”、“con

当使用Selenium(WebDriver)测试ExtJS应用程序时,我有一个按钮可以打开一个对话框。然后,测试会填写一些表单字段、单击按钮等。问题是selenium在对话框完全构建完成之前就开始执行这些操作

我知道我可以告诉硒等待一个特定的元素出现,但是如果我想把这个案例推广到“等待对话框完成加载”,有没有办法做到这一点呢?

< P>简短的回答是,“不,没有简单的方法来做这件事”。是在下载最后一个关闭标签时吗?当它被解析并添加到DOM中时?是当文档
readyState
属性为“交互式”、“contentReady”或其他值时?那么通过JavaScript添加的DOM元素呢?如果该JavaScript是通过
setTimeout()
触发的呢?处理XmlHttpRequests怎么样?对于这个问题,没有一个一刀切的答案在所有用例中都是100%正确的

等待元素是正确的方法。使用extJs时,由于生成的ID,识别正确的元素可能很困难。我经常发现在特定的JavaScript框架中使用类属性更有效 <代码>标签下载的时候吗?当它被解析并添加到DOM中时?是当文档
readyState
属性为“交互式”、“contentReady”或其他值时?那么通过JavaScript添加的DOM元素呢?如果该JavaScript是通过
setTimeout()
触发的呢?处理XmlHttpRequests怎么样?对于这个问题,没有一个一刀切的答案在所有用例中都是100%正确的


等待元素是正确的方法。使用extJs时,由于生成的ID,识别正确的元素可能很困难。我经常发现在特定的JavaScript框架中使用类属性更有效

对话框和其他元素之间有什么区别?为什么不检查一些dialog的DOM元素呢?我想知道整个DOM是否已经加载完毕,而不仅仅是一个特定的元素。你可以编写更复杂的条件(检查一些变量、弹出状态等),然后用WebDriverWait包起来。我想问题更多的是extjs在生成某些组件时使用动态ID,很难找到它们,也很难知道等待什么对话框和其他元素之间有什么区别?为什么不检查一些dialog的DOM元素呢?我想知道整个DOM是否已经加载完毕,而不仅仅是一个特定的元素。你可以编写更复杂的条件(检查一些变量、弹出状态等),然后用WebDriverWait包起来。我想问题更多的是extjs在生成某些组件时使用动态ID,很难找到它们,也很难知道要等待什么。我想你用生成的ID抓住了要点。我们将进一步了解类属性。我认为您在这里用生成的ID抓住了要点。我们将进一步了解类属性。