擅长:python、mysql、java
<p>Selenium正在尝试在验证目标元素是否已在页面上呈现之前完成操作(例如单击按钮或链接)。Selenium可以更有耐心,但你必须明确要求他这样做。在</p>
<p>例如,如果您正在测试一个发出AJAX请求的东西,您可以尝试如下方法(在Ruby中):</p>
<pre><code># timeout is in seconds
def wait_for_ajax(timeout=x)
time_limit, interval = (Time.now + timeout), 0.5
loop do
break if @driver.execute_script "return jQuery.active == 0"
sleep interval
raise "Wait for AJAX timed out after waiting for #{timeout} seconds" if Time.now > time_limit
end
end
</code></pre>
<p>为了确保您的测试是完全全面的,总是让Selenium在运行任务之前等待元素加载。在</p>