随笔分类 - 接口自动化框架
摘要:Py文件 from requests_toolbelt.multipart.encoder import MultipartEncoder @pytest.mark.parametrize('yaml_case', get_cases(data_yaml)) def test_custIndivid
阅读全文
摘要:今天在使用pytest执行用例过程中,使用了debug调试代码时,偶然发现,执行用例时不是自上而下的,pytest 中的用例执行顺序与unittest 是不一样的,pytest有默认的执行顺序,还可以自定义执行顺序。而在unittest框架中,默认按照ACSII码的顺序加载测试用例并执行,顺序为:0
阅读全文
摘要:代码如下: import requests import traceback from logging import getLogger logger = getLogger() #打印日志 class Request: def __init__(self, url, params=None, da
阅读全文
摘要:1、Unittest:单元测试框架 ——对软件中的最小可测单元进行检查和验证 作用: 提供用例组织及执行 提供丰富的断言方法(判断实际结果与预期结果是否一致) 提供丰富的日志及测试结果 2、Unittest核心要素 TestCase(测试用例):包含完整得测试流程 setUp: 预置条件 run:
阅读全文
摘要:1、Allure安装: 安装JDK1.8+才可以运行Allure 参照【https://www.cnblogs.com/luckyplj/p/11974643.html】 allure 的下载地址:https://repo.maven.apache.org/maven2/io/qameta/allu
阅读全文
摘要:POM+数据驱动+pytest 数据驱动:将测试过程中所有测试数据,进行提取、保存以及管理,提升框架的可维护性,一般情况下会使用到的数据类型:Excel、yaml、json、py......,如:登录场景,需要测试 超长字符串、必填项不填写、账户/密码错误等,使用数据驱动就可以实现同一个用例步骤,搭
阅读全文
摘要:1、POM设计模式 ——页面对象模型(Page object Modules),又名:PO/POM,是UI自动化最佳设计模式之一。把一个页面的测试用例,测试逻辑,封装为一个测试方法或者一个测试类(说白了,就是把如send_keys、click等方法封装一下,方便我们调用,后续不需要每次使用时在每次的
阅读全文
摘要:pdb ——是Python标准库的调试模块。在pytest中,可以直接使用 “--pdb" 参数在测试失败时开启调式 pytest --pdb #每次遇到失败就跳转到pdb pytest -x --pdb #在第一次遇到失败就跳转到pdb,结束测试执行 pytest --pdb --maxfail=
阅读全文
摘要:Pytest相关 主流自动化测试框架设计体系 编程语言的选择:Python(80%)、java(20%) 自动化模块:selenium/appium/requests 设计模式:关键字驱动/POM 初阶 1、 关键字驱动 原始代码分离为:代码与数据 二次分离代码:行为代码与测试代码 数据驱动行为代码
阅读全文
摘要:1、运行代码时,明明代码写对了,运行结果提示:no tests ran in 0.01s ;这是怎么回事呢? ——是因为文件名、函数名定义时,需要定义成 “ test ”开头的,才可以找到,我们检查下是不是哪个没有开头是test,没有的加上就可以了。
阅读全文
摘要:一、Pytest介绍 官网:https://docs.pytest.org/en/7.1.x/ ——Pytest是一个测试用例的管理框架,在Unitest基础上做的一个全面的升级. 集成度更高,而且更加灵活的一个测试框架(测试用例开头不想使用test打头,可进行自定义) 运行的顺序是自上而下,不是像
阅读全文