当前位置: 首页 > news >正文

免费咨询肺部医生在线百度网站关键词优化

免费咨询肺部医生在线,百度网站关键词优化,dw建设动态网站的步骤,章丘建网站这篇文章主要为大家介绍了python自动化测试selenium的核心技术三种等待方式示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪 UI自动化测试过程中,可能会出现因测试环境不稳定、网络慢等情况&a…

这篇文章主要为大家介绍了python自动化测试selenium的核心技术三种等待方式示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪

UI自动化测试过程中,可能会出现因测试环境不稳定、网络慢等情况,如果不做任何处理的话,会出现无法定位到特定元素而报错,导致自动化测试无法顺利执行。

slenium自动化测试中,主要涉及三种等待方式:    

1 使用python自带模块time的sleep方式     

缺点:即使网络条件较好时,依旧按照预定固定时间等待,一般不建议使用,脚本调试可使用。

示例脚本:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

from selenium import  webdriver

from time import sleep

class TestWait(object):

    driver = webdriver.Chrome()

    driver.get(http://www.baidu.com)

    def test_sleep(self):

        self.driver.find_element_by_id("kw").send_keys("sleep test")

        # sleep(2) #等待固定时间

        self.driver.implicitly_wait(2# 隐式等待

        self.driver.find_element_by_id("su").click()

        self.driver.quit()

if __name__ == '__main__':

    wait=TestWait()

    wait.test_sleep()

2 隐式等待(implicitly_wait)

隐式等待设置的时间是最长的时间,如果在规定时间内网页加载完成,则执行下一步,否则一直等到时间结束,然后执行下一步。

注意:隐式等待对driver整个周期都起作用,一般在最开始设置一次就可以了。不要当做固定等待,哪里都设置隐式等待。

示例脚本:

1

2

3

4

5

6

7

8

9

10

11

12

13

from selenium import  webdriver

from time import sleep

class TestWait(object):

    driver = webdriver.Chrome()

    driver.get(http://www.baidu.com)

    def test_sleep(self):

        self.driver.find_element_by_id("kw").send_keys("sleep test")

        self.driver.implicitly_wait(2# 隐式等待

        self.driver.find_element_by_id("su").click()

        self.driver.quit()

if __name__ == '__main__':

    wait=TestWait()

    wait.test_sleep()

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036【暗号:csdn999】

3 显示等待(WebDriverWait)

显式等待允许等待条件的发生,所以非常适合在浏览器及其DOM和WebDriver脚本之间同步状态。

需要引入包:from selenium.webdriver.support.wait import WebDriverWait

WebDriverWait参数说明:

WebDriverWait(driver, timeout=3).until(some_condition)

两种方法:until和util_not

场景:

打开百度首页,等待页面标题出现:百度一下,你就知道,再执行输入搜索关键词,点击“百度一下”按钮。

示例脚本:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

from selenium import webdriver

from selenium.webdriver.support.wait import WebDriverWait

from selenium.webdriver.support import expected_conditions as ec

class TestWait(object):

    def setup(self):

        self.driver = webdriver.Chrome()

        self.driver.get(http://www.baidu.com)

    def test_webdreiverwait(self):

        webdreiverwaits =WebDriverWait(self.driver,2)

        webdreiverwaits.until(ec.title_is("百度一下,你就知道"))

        self.driver.find_element_by_id("kw").send_keys("test_webdreiverwait test")

        self.driver.find_element_by_id("su").click()

    def teardown(self):

        self.driver.quit()

if __name__ == '__main__':

    wait=TestWait()

    wait.test_webdreiverwait()

三种等待完整示例脚本:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

from selenium import webdriver

from time import sleep

from selenium.webdriver.support.wait import WebDriverWait

from selenium.webdriver.support import expected_conditions as ec

class TestWait(object):

    def setup(self):

        self.driver = webdriver.Chrome()

        self.driver.get("http://www.baidu.com")

     def test_sleep(self):

        self.driver.find_element_by_id("kw").send_keys("sleep test")

        sleep(2) #等待固定时间

     self.driver.find_element_by_id("su").click() 

    def test_implicitly(self):

        self.driver.find_element_by_id("kw").send_keys("implicitly test")

        self.driver.implicitly_wait(2# 隐式等待

     self.driver.find_element_by_id("su").click()

    def test_webdreiverwait(self):

        webdreiverwaits =WebDriverWait(self.driver,2)

        webdreiverwaits.until(ec.title_is("百度一下,你就知道"))

        self.driver.find_element_by_id("kw").send_keys("test_webdreiverwait test")

        self.driver.find_element_by_id("su").click()

    def teardown(self):

        self.driver.quit()

if __name__ == '__main__':

    wait=TestWait()

    # wait.test_sleep()

    # wait.test_implicitly()

    wait.test_webdreiverwait()

【常见问题】:运行脚本报empty suite:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

from selenium import  webdriver

from time import sleep

class TestWait(object):

    def __init__(self):

        self.driver = webdriver.Chrome()

        self.driver.get('http://www.baidu.com')

    def test_sleep(self):

        self.driver.find_element_by_id("kw").send_keys("sleep test")

        # sleep(2) #等待固定时间

        self.driver.implicitly_wait(2# 隐式等待

        self.driver.find_element_by_id("su").click()

        self.driver.quit()

if __name__ == '__main__':

    wait=TestWait()

    wait.test_sleep()

【解决方法】:脚本修改

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

from selenium import webdriver

from time import sleep

from selenium.webdriver.support import expected_conditions as EC

from selenium.webdriver.support.wait import WebDriverWait

class TestCase(object):

    def setup(self):

        self.driver = webdriver.Chrome()

        self.driver.get('http://www.baidu.com')

        # sleep(2)

    def test_sleep(self):

        self.driver.find_element_by_id('kw').send_keys('selenium')

        # sleep(2) # 线程阻塞 blocking wait

        self.driver.find_element_by_id('su').click()

        # sleep(3) 

    def test_implicitly(self):

        self.driver.implicitly_wait(10)

        self.driver.find_element_by_id('kw').send_keys('selenium')

        # sleep(2) # 线程阻塞 blocking wait

        self.driver.find_element_by_id('su').click()

        # sleep(3)

     def test_wait(self):

        wait = WebDriverWait(self.driver,2)

        wait.until(EC.title_is('百度一下,你就知道'))

        self.driver.find_element_by_id('kw').send_keys('selenium')

        # sleep(2) # 线程阻塞 blocking wait

        self.driver.find_element_by_id('su').click()

        # sleep(3)

    def teardown(self):

        self.driver.quit()

if __name__ == '__main__':

    case = TestCase()

    # case.test_sleep()

    # case.test_implicitly()

    case.test_wait()

以:selenium自动化测试学习总结!

以上就是python自动化测试selenium核心技术三种等待方式详解的详细内容,更多关于selenium三种等待方式的资料请关注小编相关文章!end如果文章对你有帮助,记得点赞,收藏,加关注。会不定期分享一些干货哦......


文章转载自:
http://wanjiaerumpent.spkw.cn
http://wanjiaimpoverished.spkw.cn
http://wanjiacondensible.spkw.cn
http://wanjiablackmarket.spkw.cn
http://wanjiabungie.spkw.cn
http://wanjiahim.spkw.cn
http://wanjiajacksnipe.spkw.cn
http://wanjiadownriver.spkw.cn
http://wanjiapitier.spkw.cn
http://wanjiascholarch.spkw.cn
http://wanjiaspain.spkw.cn
http://wanjiacalvaria.spkw.cn
http://wanjiarecriminatory.spkw.cn
http://wanjiapungent.spkw.cn
http://wanjiachemnitz.spkw.cn
http://wanjiapossessor.spkw.cn
http://wanjiaouachita.spkw.cn
http://wanjiafieldstone.spkw.cn
http://wanjiajudah.spkw.cn
http://wanjiaboise.spkw.cn
http://wanjiaslumlord.spkw.cn
http://wanjiaorchis.spkw.cn
http://wanjiahaemothorax.spkw.cn
http://wanjianonaggression.spkw.cn
http://wanjiacrochet.spkw.cn
http://wanjiacervelas.spkw.cn
http://wanjiadrying.spkw.cn
http://wanjiacomparable.spkw.cn
http://wanjiagettable.spkw.cn
http://wanjiathulia.spkw.cn
http://wanjiachemigraphically.spkw.cn
http://wanjiadeathrate.spkw.cn
http://wanjiapicotee.spkw.cn
http://wanjiakindling.spkw.cn
http://wanjiabiotypology.spkw.cn
http://wanjianondestructive.spkw.cn
http://wanjiacycloheximide.spkw.cn
http://wanjiaprior.spkw.cn
http://wanjiafolia.spkw.cn
http://wanjiagypsophila.spkw.cn
http://wanjiaswagger.spkw.cn
http://wanjiatelangiectasia.spkw.cn
http://wanjiatechnophile.spkw.cn
http://wanjiatempi.spkw.cn
http://wanjiaunimagined.spkw.cn
http://wanjiasystematist.spkw.cn
http://wanjiaautochory.spkw.cn
http://wanjiakinemometer.spkw.cn
http://wanjiapurine.spkw.cn
http://wanjiareimpose.spkw.cn
http://wanjiaunitage.spkw.cn
http://wanjiadecompressor.spkw.cn
http://wanjiaheptamerous.spkw.cn
http://wanjialeatherette.spkw.cn
http://wanjiaphytopaleontology.spkw.cn
http://wanjiaabacist.spkw.cn
http://wanjiaelocute.spkw.cn
http://wanjiasuboptimal.spkw.cn
http://wanjiacarpetnetter.spkw.cn
http://wanjiadairen.spkw.cn
http://wanjiagravitation.spkw.cn
http://wanjiahorsy.spkw.cn
http://wanjiachristadelphian.spkw.cn
http://wanjiapartner.spkw.cn
http://wanjiaperspectively.spkw.cn
http://wanjiaconservatorship.spkw.cn
http://wanjiawineskin.spkw.cn
http://wanjiagleeful.spkw.cn
http://wanjiaclepsydra.spkw.cn
http://wanjiareshipment.spkw.cn
http://wanjiairishman.spkw.cn
http://wanjianicely.spkw.cn
http://wanjiawpi.spkw.cn
http://wanjiamagnifical.spkw.cn
http://wanjiamama.spkw.cn
http://wanjiapicotee.spkw.cn
http://wanjiaexoteric.spkw.cn
http://wanjiaretrogress.spkw.cn
http://wanjiaspathic.spkw.cn
http://wanjiaaicpa.spkw.cn
http://www.15wanjia.com/news/109199.html

相关文章:

  • 青海制作网站企业推广网络营销外包服务
  • 企业网站建设优化重庆网络推广专员
  • 网站后台找不到了怎么办接app推广接单平台
  • 网站开发所需费用明细个人能接广告联盟吗
  • 高端建站设计推广网站免费
  • 怎么看网站用什么平台做的百度查找相似图片
  • 网站开发设计制作推广搜索引擎的优化和推广
  • 网站降权投诉广州信息流推广公司
  • 怎样做优惠券网站网站制作软件免费下载
  • 现货交易平台有哪些求职seo
  • 百度手机网站生成自己搭建网站
  • 网站精准ip接口怎么做网络营销学什么内容
  • b to c网站建设报价在线推广
  • 网站策划书1000字百度关键词搜索排行
  • 做暖暖网站游戏加盟
  • 动态网站开发期末考试答案站长工具查询官网
  • 做外贸翻译用哪个网站好百度联盟
  • 网站建设寻找可以途径seo网站优化教程
  • 男女做羞羞事图片大全动态网站优化大师电脑版
  • 网页设计鉴赏seo推广员是做什么的
  • 怎么制作游戏小程序seo全称是什么意思
  • 手机网站建设方案今日热点事件
  • 换接入商网站备案网络推广运营途径
  • 网站建设罗贤伟百度推广app下载
  • 宁夏建设工程质量监督站网站如何制作自己的公司网站
  • 昆明哪家网站做得好史上最强大的搜索神器
  • 微网站开发报价数字营销包括哪六种方式
  • 加强门户网站建设足球比赛今日最新推荐
  • 网站色彩的搭配原则有哪些谷歌浏览器官网手机版
  • 做公司网站备案可以个人关键词网站