zoukankan      html  css  js  c++  java
  • 《SeleniumBasic 3.141.0.0

    我们在做WEB自动化时,一般要等待页面元素加载完成后,才能执行操作,否则会报找不到元素的错误,这样就要求我们在有些场景下加等待时间。

    SeleniumBasic有三种等待方式:

    • 强制等待:与Selenium无关的一种堵塞线程的延时方法,固定毫秒数
    • 隐式等待:设置一个等待时间,如果在这个等待时间内,网页加载完成,则执行下一步;否则一直等待时间截止,然后再执行下一步。这样也就会有个弊端,程序会一直等待整个页面加载完成,直到超时,但有时候我需要的那个元素早就加载完成了,
    • 显式等待:程序每隔一定时间检查一次,如果条件成立了,则执行下一步,否则继续等待,直到超过设置的最长时间,然后抛出TimeoutException

    SeleniumBasic的Utility类提供了一个Sleep方法,用于实现强制等待。

        WD.New_ChromeDriver Service:=Service, Options:=Options
        WD.URL = "https://www.baidu.com"
        Dim form As SeleniumBasic.IWebElement
        Dim keyword As SeleniumBasic.IWebElement
        Dim button As SeleniumBasic.IWebElement
        Set form = WD.FindElementById("form")
        Set keyword = form.FindElementById("kw")
        Dim U As Utility
        Set U = New SeleniumBasic.Utility
        keyword.SendKeys "好看视频"
        U.Sleep 3000
        keyword.Clear

    以上程序,在输入框中键入“好看视频”,过3秒后清空文本框内容。

    SeleniumBasic有一个ITimeouts类,下面有3个成员,其中ImplicitWait就是隐式等待,这是一个可写属性。图中把隐式等待时间设置为5秒。

    显式等待,在IWebDriver对象下面,有一个WebDriverWait_Timeout 属性,修改它即可设置显式等待时间。

    WD.WebDriverWait_Timeout = 30

  • 相关阅读:
    对其他组的评论与意见
    第一阶段结果展示
    团队第一阶段冲刺绩效评估
    团队冲刺第八天站立会议
    团队检查博客
    团队冲刺地七天站立会议
    团队冲刺第六天站立会议
    团队冲刺第五天战略站立会议
    团队冲刺第四天战略会议站立
    No2_2.接口继承多态_Java学习笔记_继承
  • 原文地址:https://www.cnblogs.com/ryueifu-VBA/p/13699219.html
Copyright © 2011-2022 走看看