如果我有超过50页,如何检查页面加载

时间:2016-12-09 12:07:18

标签: java selenium webdriver automated-tests

我是selenium webdriver(java编码)的新手。我被给了一个网站,并要求编写脚本来检查所有页面是否正确加载。我不知道如何检查页面加载。我的一位朋友建议,当页面加载时,我应该查找最后一个加载的元素,并在该元素上使用wait方法进行检查直到它可见。

我的问题是我要查看超过50页。对于每个页面,我应该使用等待方法并检查可见性,becoz需要花费很多时间。还有其他办法吗?

2 个答案:

答案 0 :(得分:0)

您可以按照以下步骤解决问题(对于所有50个页面,一次一个):

  1. 识别在浏览器渲染中最后显示的元素。
  2. 添加hashcode,以检查该元素是否显示在网页上。
  3. 等待元素的可见性:

    visibility_of_element_located
      

    在抛出TimeoutException之前等待最多10秒,或者如果发现元素显示,则会在0-10秒内返回。默认情况下,WebDriverWait每500毫秒调用一次ExpectedCondition,直到它成功返回。成功返回的是ExpectedCondition类型是布尔返回true或非null返回值,用于所有其他ExpectedCondition类型。

    因此,您实际上并没有等待element = WebDriverWait(driver, 10).until( EC.visibility_of_element_located((By.ID, "myDynamicElement")) # here, you can use any available locator of your choice, like, By.XPATH, BY.CLASS_NAME etc. 检查元素是否显示。元素显示在页面上后,该方法将立即返回10 seconds

    注意: 10 seconds是可配置的。

答案 1 :(得分:0)

您需要查看可视化测试方向,以及不是为此设计的纯硒。

您可以为Selenium尝试两个插件:

1)基于云的Applitools(https://applitools.com/),您可以免费试用, 示例在这里https://eyes.applitools.com/app/Web/Deploy/Tutorial/tutorial.html

2)或者你可以使用Sikuli(http://www.sikuli.org/),免费,非云。