pythom selenium Web自动化测试项目---购票系统实战

  • 阿里云国际版折扣https://www.yundadi.com

  • 阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

    pythom selenium Web自动化测试项目—购票系统实战

    1. 环境搭建

      • python环境建议使用anaconda

      • pycharm IDE集成开发工具

      • selenimu的安装S

        安装命令pip install selenium

    2. 校验环境是否搭建成功

      写一个简单的demo打开浏览器看能否成功

      • webDriver的配置下载chromedriver并解压到python的安装路径下
      • 再pycharm中编写代码看能否成功打开chrome浏览器
      # 导入selenium的包
      from selenium import webdriver
      # 添加chrome的配置项
      options = webdriver.ChromeOptions()
      options.add_experimental_option('detach', True)
      # 打开chrome
      driver = webdriver.Chrome(options=options)
      
    3. 测试流程分析把手工需要的操作全部用python代码来实现

      1. 流程进入网页>>>>>输入账号(1. 找到输入框2. 输入用户名)>>>>输入密码>>>>>点击登录>>>>验证码>>>>选票>>>>买票

      2. 具体实现

        • 进入网页

          使用.get()方法进入该网页

          # 如访问12306的登录页
          driver.get('https://kyfw.12306.cn/otn/resources/login.html')
          
        • 输入账号

          两个步骤

          • 找到输入账号的文本框find_element()
          • 输入要测试的账号send_keys()
          # 输入用户名,先找到登录框
          # 定位元素操作
          driver.find_element('xpath','//*[@id="J-userName"]').send_keys('123456')
          
        • 输入密码

          # 定位输入密码文本框元素输入密码
          driver.find_element('xpath','//*[@id="J-password"]').send_keys('xxxxxx')
          
        • 点击登录

          # 点击登录
          driver.find_element("xpath",'//*[@id="J-login"]').click()
          
        • 验证码

          driver.find_element("xpath",'//*[@id="id_card"]').send_keys('1713')
          # 点击获取验证码
          
        • 选票

        • 买票

      3. 几个技术

        1. 隐式等待

          # 所有找元素都会触发
          # 每隔1s找一次这个元素如果没有找到就继续知道配置时间过了还没找到就报错中途找到就往下执行
          # 使用场景用延迟加载的还比如网络影响
          # 优点加强自动化的稳定性
          
          1. 绕过自动化

            # 去掉自动化标识
            option = Options()
            option.add_experimental_option('excludeSwitches',['enables-automation'])
            option.add_argument('--disable-blink-features=AutomationControlled')
            
          2. 固定等待

            import time
            time.sleep(2)
            
    4. Selenium脚本的执行速度受多方面因素的影响如网速操作步骤的繁琐程度页面加载的速度 Selenium保证元素成功率是通过元素的定位。不能单方面追求运行速度的要确保稳定性能稳定地实现回归测试才是关键。
      S

    5. 自动化测试的优点是能够很快、很广泛地查找缺陷同时可以做很多重复性的工作在回归测试阶段我们可以利用自动化功能测试工具进行而无须大量的软件测试人员手动的再次执行测试用例极大的提高了工作效率。

  • 阿里云国际版折扣https://www.yundadi.com

  • 阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6