• 【自动化测试入门】用Airtest - Selenium对Firefox进行自动化测试(0基础也能学会)


    1. 前言

    本文将详细介绍如何使用AirtestIDE驱动Firefox测试,以及脱离AirtestIDE怎么驱动Firefox(VScode为例)。看完本文零基础小白也能学会Firefox浏览器自动化测试!!!

    2. 如何使用AirtestIDE驱动Firefox浏览器

    对于Web自动化测试,目前AirtestIDE支持chrome浏览器和Firefox2种浏览器,今天我们重点聊一下,如何使用AirtestIDE驱动Firefox浏览器

    1)基础知识

    AirtestIDE内置python环境,环境里面装好了Airtest-Selenium库,是基于Selenium封装的。GeckoDriver是与Firefox浏览器配合使用的驱动程序,安装GeckoDriver需要注意两者的版本兼容,请查看 https://github.com/mozilla/geckodriver/releases 。详细步骤参考下文:

    2)下载GeckoDriver(注意选择对应操作系统的版本)

    3)解压获得geckodriver.exe

    解压刚才下载的文件,得到geckodriver.exe 。

    4)给geckodriver.exe设置为系统环境变量

    把geckodriver.exe放到你电脑某个目录下,之后给它设置系统环境变量:

    5)在AirtestIDE驱动Firefox做简单的自动化测试

    动图封面

    1. # -*- encoding=utf8 -*-
    2. from airtest.core.api import *
    3. from airtest.cli.parser import cli_setup
    4. from selenium import webdriver
    5. from selenium.webdriver.common.keys import Keys
    6. from airtest_selenium.proxy import WebFirefox
    7. import time
    8. #创建Chrome浏览器驱动实例
    9. browser = WebFirefox(firefox_binary=r"C:\Program Files\MozillaFirefox\firefox.exe")
    10. # 访问网页
    11. browser.get('https://www.baidu.com')
    12. #打印页面标题
    13. print(browser.title)
    14. #休眠3秒
    15. time.sleep(3)
    16. #关闭浏览器
    17. browser.quit()

    ① 版本说明

    【AirtestIDE】1.2.15:https://airtest.netease.com/changelog.html【python】3.6.5:AirtestIDE内置【Firefox】113.0.2 (64 位)【geckodriver】0.33.0(win64):https://github.com/mozilla/geckodriver/releases/tag/v0.33.0

    ② 启动报错

    在运行上述demo时,一开始遇到了一个类似这样的报错:

    selenium.common.exceptions.WebDriverException: Message: Expected browser binary location, but unable to find binary in default location, no 'moz:firefoxOptions.binary' capability provided, and no binary flag set on the command line
    

    查询后发现,是找不到Firefox可执行文件的意思,于是在创建WebFirefox时,将firefox.exe可执行文件路径当做参数传递给WebFirefox,之后就可以正常运行了。

    3. 如何脱离AirtestIDE驱动Firefox(vscode为例)

    1)前置条件:安装VScode、配置python环境

    2)python配置airtest、airtest-selenium

    可参考:如何部署本地python环境使用命令如下:

    1. pip install airtest
    2. pip install airtest-selenium

    小编的pip版本太旧了,还需更新pip,使用命令:python -m pip install --upgrade pip

    3)在cmd控制台测试环境是否配置成功

    4)测试脚本demo,解决报错

    ① No module named pynput

    缺少 pynput库,直接 pip install安装上即可。

    ② TypeError: init() got an unexpected keyword argument......

    Ctrl+鼠标左键到proxy.py文件;出现 argument 'timeout'报错的话删掉timeout=timeout的参数;出现argument 'firefox_options'报错的话删掉firefox_options=firefox_options的参数。

    5)脱离AirtestIDE驱动Firefox

    4. 小结

    今天关于驱动Firefox的教程就到这里啦,更多关于Airtest想看的内容,可以给我们评论/留言。

    最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

    在这里插入图片描述

    这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!   

  • 相关阅读:
    使用 Docker-compose 搭建lnmp
    吐血整理python数据分析利器pandas的八个生命周期!
    [暑假]操作系统概述笔记[学习方法篇]
    java毕业设计天狗电子商城系统mybatis+源码+调试部署+系统+数据库+lw
    如何编写基本的Java程序
    【iMessage苹果推日历推位置推送】软件安装 UIApplication 的 registerForRemoteNotifications
    Springboot毕设项目基于springboot的疫情物资运输管理系统4rs1u(java+VUE+Mybatis+Maven+Mysql)
    【日常总结】Swagger-ui 导入 showdoc (优雅升级Swagger 2 升至 3.0)
    JuiceFS 用户必备的 6 个技巧
    SpringBoot 异步任务-Guava 中EventBus
  • 原文地址:https://blog.csdn.net/qq_48811377/article/details/133926815