自动化测试笔记(selenium+pytest+Allure)

本文介绍了自动化测试的好处和适用场景,重点讲解了使用Selenium进行网页UI自动化测试的组件、环境搭建、元素定位以及常见操作。接着,介绍了Pytest框架的用例编写规则和断言机制,并探讨了Allure测试报告的生成与使用。通过这些工具和方法,可以提升自动化测试的效率和质量。
摘要由CSDN通过智能技术生成


自动化测试:所有采用程序或代码来替代或辅助人工测试的行为称为自动化测试。
自动化测试好处:提升工作效率
主要应用环节:回归测试、兼容性测试、冒烟测试
适合自动化测试的项目特点:
1、项目需求稳定
2、项目周期较长
3、脚本可以重复使用

selenium:是由thoughtworks公司2004年左右开发的基于浏览器的自动化测试工具,提供了一整套的用于
          web UI自动化的函数。
    组成:webdriver:基于浏览器的自动化测试工具,提供了一整套的用于web UI自动化的函数。
          selenium IDE:firefox浏览器的插件,可以录制脚本,selenium3.0已被淘汰。
          selenium grid:用于管理和执行自动化测试用例(课程中讲jenkins)
    
    selenium是一个C/S模式工具,脚本是C端,浏览器是S端,使用json wire协议。

搭建自动化测试环境:
1、安装python和编译器
2、安装浏览器,将浏览器的安装路径添加到path变量中。
3、将浏览器的驱动文件存放路径添加到path变量中
4、导入selenium库(pip install selenium)
        离线导入:下载selenium tar包,解压。
                   python setup.py build
                   python setup.py install

注意:浏览器驱动文件与浏览器版本需要匹配,工作中浏览器版本不能频繁升级


chrome浏览器驱动文件下载地址:http://chromedriver.storage.googleapis.com/index.html
https://npm.taobao.org/mirrors/chromedriver
火狐浏览器驱动文件对应地址:https://firefox-source-docs.mozilla.org/testing/geckodriver/Support.html
                   下载地址:  https://github.com/mozilla/geckodriver/releases

edge浏览器驱动文件下载地址:https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/

元素定位:
定位方法:
find_element():单元素定位,返回值为定位到的元素对象
find_elements():多元素定位,返回值为列表,列表中是定位到的元素对象

八种元素定位方式:
1、id定位:find_element(By.ID,'id属性值')
2、name定位:find_element(By.NAME,'name属性值')
3、class定位:find_element(By.CLASS_NAME,'name属性值')
            class属性值中有空格时必须使用点代替
4、tag定位:find_element(By.TAG_NAME,'元素的标签值')
5、link_text定位:find_element(By.LINK_TEXT,'超链接文字')
6、partial_link_text定位:find_element(By.PARTIAL_LINK_TEXT,'超链接部分文字')
7、css定位:find_element(By.CSS_SELECTOR,'css值')
8、xpath定位:find_element(By.XPATH,'xpath值')

Day2:
frame框架(标签是iframe或frame)切换:
切换方法:
切入框架:    switch_to.frame()
    1、id切入:switch_to.frame('frame框架id属性值')
    2、name切入:switch_to.frame('frame框架name属性值')
    3、先定位frame框架,再切入:switch_to.frame(frame框架对象)
    4、索引切入:switch_to.frame(索引值)

    注意:frame框架存在嵌套的情况下需要一层一层切入

返回父框架:switch_to.parent_frame()
切出框架:switch_to.default_content()


网页切换:
1、获取打开网页的句柄,得到一个由网页对象组成的列表,按照网页打开顺序,索引从0开始
handles = driver.window_handles

2、切换网页:switch_to.window(handler[索引值])
3、c

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值