zoukankan      html  css  js  c++  java
  • selenium 笔记

     总结:

      1、后端语言选择python时,通过pip isntall selenium 安装,对浏览器版本有兼容性问题,版本太高无法运行脚本;

      2、利用selenium来模拟浏览器对项目进行操作,无区分post与get请求;

      3、进行ui测试,前端有改变,测试代码也要改变,成本比较大;

      4、项目稳定做回归测试;

     

     元素定位

      browser.find_element_by_class_name('btn')

      browser.find_element_by_xpath(r"/html/body/div[1]/div[5]/div[1]/div[3]/div[4]/h3/a"))

      driver.find_element_by_id("kw")

     

     获取元素文字

      browser.find_element_by_xpath('/html/body/div[2]/ul[3]/li[1]').text

     元素点击

      browser.find_element_by_xpath('/html/body/div[2]/ul[3]/li[1]').click()

     元素输入

      browser.find_element_by_xpath('/html/body/div[2]/ul[3]/li[1]').send_keys('user')

     下拉框定位

      根据具体项目来,一般进行二次定位即可

      browser.find_element_by_xpath('/html/body/div[2]/ul[3]/li[1]').click()   

      browser.find_element_by_xpath('/html/body/div[1]/div/div[2]/div[2]/div/div[2]/div/div[1]/form/div[8]/div/button[1]').click()

     

     窗口切换跳转

    allhandles=browser.window_handles
    
    print (  allhandles)
    
    #循环判断窗口是否为当前窗口
    
    for handle in allhandles:
    
        if handle != nowhandle:
    
            #窗口跳转
    
            browser.switch_to_window(handle)
    
            title = browser.title
    
            print (title)
    
            #获得前面 URL,打印
    
            now_url = browser.current_url

     

  • 相关阅读:
    在页面生命周期执行时 Page 对象在 SaveState 阶段都发生了什么事?
    接收Firfox RESTClient #Post请求
    c# 单例模式[Singleton]之深夜闲聊
    JQuery 之 Ajax 异步和同步浅谈
    [模板]数学整合
    Yandex插件使用说明——Slager_Z
    模板练习(LUOGU)
    数学整合 新(LUOGU)
    [NOI.AC]DELETE(LIS)
    [NOI.AC]COUNT(数学)
  • 原文地址:https://www.cnblogs.com/xiaochou1024/p/9372149.html
Copyright © 2011-2022 走看看