- 博客(67)
- 收藏
- 关注
原创 Python函数注释
函数注释中的参数和返回值,都是可选的函数注释是一种关联方式,编译时具有函数各个部分的任意Python表达式对于函数注释而言,python不附加任何特定的含义或对注释的意义,python只是让这些表达式可用注释具有的唯一方式是当注释具有意义时,由第三方库解释注释使用者可以使用函数的注释做想做的事如:一个库可能使用基于字符串的注释来提供“改进”的帮助消息另一个库可用于为Python提供类型检查的函数和方法,该库可用使用注释来指示函数的预期输入和返回类型。
2025-08-12 20:38:23
411
原创 Pytest编写插件
自定义收集示例插件:在Yaml文件中指定测试的基本示例提供pytest自身功能的内置插件提供额外功能的许多外部插件以上这些插件都实现了钩子和fixtures来扩展和添加功能如果插件使用任何标记,应该注册插件,以便它们出现在pytest的帮助文本中,并且不会引起虚假警告如以下代码。
2025-08-11 21:01:05
730
原创 Pytest安装和使用插件
使用pip可以安装第三方插件使用pip可以卸载第三方插件如果插件已安装,pytest会自动发现并集成它,无需手动激活以下是一些常用插件的简要说明列表。
2025-08-08 16:58:12
421
原创 Pytest的skip和xfail
以下是在不同情况下跳过模块中测试的快速指南无条件跳过模块中的所有测试基于某些条件跳过模块中的所有测试如果缺少某些导入,则跳过模块中的所有测试。
2025-08-08 11:42:18
784
原创 Pytest捕获警告
不推荐,可以使用--disable-warnings命令行选项来完全禁止测试运行输出中的警告摘要记录警告为在未发出警告或满足其他条件是生成自定义测试失败消息提供了机会如果在调用f时没有发出警告,则not record将评估为True,然后,可以使用自定义错误消息调用pytest.fail()
2025-08-07 14:34:37
778
原创 捕获stdout/stderr输出
pytest根据 --capture=命令行参数的配置或通过使用fixture来拦截stdout和stderr--capture=标志配置报告,而fixture则提供更精细的控制并允许在测试期间检查输出,报告可以使用-r标记进行自定义。
2025-08-06 11:52:20
616
原创 管理Pytest输出
r 标记可用于在测试会话结束时显示”简短测试摘要信息“,在大规模测试套件中,使失败、跳过、xfail等更清晰、更容易了解默认为fE,以列出失败和错误运行结果-r选项后面可以接受多个字符,上面使用的a意味着”除了通过的其他都展示“可用完整字符列表f - 失败E - 错误s - 跳过x - xfailed(预期失败)x - xpassed(预期失败但实际通过)p - 通过P - 通过并有输出用于(取消)选择组的特殊字符a - 除了p、P之外的所有A - 所有。
2025-08-04 21:18:02
1128
原创 测试失败的重新运行
该插件提供了两个命令行选项,用于重新运行pytest调用中失败的测试--cacha-clear选项允许在测试运行之前移除所有跨会话缓存内存其他插件可以访问config.cache对象,以在pytest调用之间设置/获取可JSON编码的值注:此插件(cachaprovider)默认启用,但如果需要可以禁用。
2025-08-03 17:28:56
1192
原创 运行doctest
默认情况下,所有匹配test*.txt模式地文件都将通过Python标准地doctest模块运行可以通过在命令行中发出以下命令来更改模式在命令行中,--doctest-glob可以在命令行中多次给定默认情况下,pytest将收集test*.txt文件查找doctest指令,但可以使用--dotest-glob选项传递额外地glob模式(允许多次)除了文本文件,还可以直接从类和函数地文档字符串中执行doctest,包括从测试模块中执行。
2025-08-02 20:14:56
900
原创 monkeypatch/mock模块和环境
测试有时需要调用依赖于全局设置的功能,或者调用不易测试的代码(如:网络访问)monkeypatch fixture可以安全的设置/删除属性、字典项或环境变量,或修改sys.path以进行导入monkeypath fixture提供了以下帮助方法,用于安全的修补和模拟测试中的功能所有修改将在请求的测试函数或fixture完成后撤销,raising参数决定如果设置/删除操作的目标不存在,是否会引发KeyError或AttributeError。
2025-08-02 18:14:46
961
原创 Pytest临时目录和文件
可以使用tmp_path fixture,它会为每个测试函数提供一个独有的临时目录tmp_path是一个pathlib.path对象运行此测试会通过,除了最后一行assert 0,用它来查看值默认情况下,pytest会保留最近3次pytest调用所创建的临时目录,通过将基础临时目录配置为每个并发运行都独有,可以支持同一测试函数的并发调用。
2025-08-01 20:18:54
773
原创 Fixture夹具
在基本层面 ,测试函数通过将其声明为参数来请求所需的fixture当pytest运行测试时,会查看该测试函数签名中的参数,搜索与这些参数同名的fixturepytest寻找到它们,会运行fixture,捕获它们的返回值(如果有),将这些对象作为参数传递给测试函数。
2025-08-01 11:42:51
704
原创 Pytest断言
可以通过实现pytest_assertrepr_compare hook来添加自己地详细解释返回失败断言表达式中比较地解释如果没有自定义解释,则返回None,否则返回字符串列表字符串将用换行符连接,但字符串中地任何换行符都将被转义除第一行外地所有行都将略微缩进,目的是让第一行作为摘要config(Config):pytest配置对象op(str):运算符,如”==“、”!=“left(object):左操作数right(object):右操作数。
2025-07-29 18:50:08
1260
原创 调用Pytest
通常,pytest通过命令pytest调用,将执行当前目录及子目录中所有符合test_*.py或*_test.py形式的文件中的所有测试,一般来说,pytest遵循标准测试发现规则。
2025-07-29 15:37:02
808
原创 Python
根据电脑类型选择,电脑是windows选择Windows根据电脑系统类型选择,64位的选择64位注意:图片上安装的是python3版本的下载成功后点击运行一直选下一步即可安装成功(可以自己自定义安装路径)
2025-07-28 17:11:02
1012
原创 JMeter—监听器—聚合报告
JMeter现在将具有相同经过时间的样本组合在一起,因此使用的内存更少,但是,对于耗时超过几秒的样本,有可能更少的样本具有相同的时间,在这种情况下将需要更多的内存,可以使用监听器重新加载csv或xml结果文件,这是避免性能影响的推荐方法。吞吐量是从采样器的目标角度计算的(如:HTTP样本是远程服务器),JMeter会考虑生成请求的总时间,如果其他采样器和定时器在同一个线程中,它们会增加总时间,从而减低吞吐量值,因此,两个具有不同名称的相同采样器的吞吐量僵尸两个具有相同名称的采样器的。
2025-07-26 14:27:30
380
原创 JMeter—监听器—查看结果树
正则表达式测试器:Regexp Tester视图仅适用于文本响应,将在面板上显示纯文本,”Test“按钮允许将正则表达式应用到上面板,结果将显示在下面板中,正则表达式中的第一个[]中的第一个数字是匹配号,第二个[]中的数字是组,组[0]是整个RE匹配的任何内容,组[1]是与第一个组匹配的任何内容。边界值提取器测试仪:边界提取器测试器仅适用于文本响应,它在上面板中显示纯文本,”Test“按钮允许用户将边界提取器查询应用到上面板,结果将显示在下面板中。
2025-07-25 21:35:14
413
原创 JMeter—配置元素—HTTP请求默认值
如:如果创建的多个请求控制器的所有请求都发送到同一台服务器,可以添加一个HTTP请求默认值元素,并填写服务器名称或IP字段,这样,就可以在添加多个HTTP请求控制器时,将服务器名称或IP字段留空,控制器将从HTTP请求默认值元素继承此字段值。Save response as MD5 hash(保存响应未MD5哈希值):如果选择此选项,则响应不会存储在样本结果中,而是计算并存储数据的32个字符的MD5哈希值,这用于测试大量数据。Password(密码):可选,代理服务器的密码(在测试计划中未加密存储的)
2025-07-25 17:09:04
510
原创 Selenium浏览器操作
Selenium不仅可操作网页元素,还可以控制浏览器本身的行为,如管理窗口,处理弹窗,操作cookies、执行JavaScript等。
2025-07-25 15:17:55
480
原创 Selenium等待机制
隐式等待:适用于简单的场景,全局性等待,但可能会导致不必要的等待时间显示等待:适用于复杂的场景,灵活性高,但代码相对复杂固定等待:简单易用,但效率低下,不推荐在复杂的测试场景中使用Fluent Wait:适用于需要动态调整等待时间的场景。
2025-07-25 09:20:55
802
原创 Selenium WebDriver
Selenium Webdriver是Selenium的核心组件,提供了与浏览器交互的API,允许开发者提供编程语言控制浏览器并执行各种操作。
2025-07-23 22:32:05
1103
原创 Selenium初始
Selenium是一个用于自动化Web浏览器操作的工具集Selenium主要用于Web应用程序的自动化测试Selenium支持多种编程语言(如:Python、Java、C#、JavaScript),并且可以在多种浏览器(如Chrom、Firefox、Edge、Safari等)和操作系统(如Windows、macOS、Linux等)Selenium的核心功能是模拟用户在浏览器中的操作,如点击按钮、输入文本、导航页面等。
2025-07-23 21:09:27
1083
原创 配置元素—CSV数据集配置
在运行时生成唯一的随机值在CPU和内存方面是昂贵的,因此只需在测试之前创建数据,如有必要,文件中的随机数据可以与运行时参数一起使用,以从每次运行中创建不同的值集-例如使用连接-这比在运行时生成所有内容要节省CPU和内存。标识符—共享相同表服饰的所有线程共享同一个文件,如:如果有4个线程组,可以为两个或更多组使用一个公共ID,以便在它们之间共享文件,或者可以使用线程号在不同线程组中的相同线程号之间共享文件。如果启用了”允许引用数据“,则可以将值括在双引号中,要在带引号的字段中包含双引号,请使用两个双引号。
2025-07-23 18:36:44
1069
原创 取样器—HTTP请求
告诉JMeter解析HTML文件并为文件中引用的所有图像,Java小程序,Javascript文件、CSS等发送HTTP/HTTPS请求。在有大量HTTP请求或带有许多参数的请求时,可以使用JMeter的HTTP(S)测试脚本记录器来创建,能节省配置时间。如果要向同一个Web服务器发送多个请求,可以使用HTTP默认请求配置元素,减少为每个HTTP请求输入相同的信息。允许向Web服务器发送HTTP/HTTPS请求。3.HTTP Request(HTTP 请求)1.HTTP Request(HTTP请求)
2025-07-22 12:10:05
893
原创 JMeter指定测试计划
测试计划描述了Jmeter在运行时将执行的一系列步骤一个完整的测试计划将包含一个或多个线程组、逻辑控制器、样本生成控制器、侦听器、计时器、断言和配置元素。
2025-07-19 19:30:02
902
原创 Python3 JSON数据解析
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式使用json模块对JSON数据进行编码,包含了两个函数。
2025-07-19 11:01:48
183
原创 Python3 多线程
每一个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口,但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。每个线程都有它自己的一组cpu寄存器,称为线程的上下文,该上下文反映了线程上次运行该线程的CPU寄存器的状态指令指针和堆栈指针寄存器是线程上下文中两个最重要的寄存器,线程总是在进程得到上下文中运行的,这些地址都用于标志拥有线程的进程地址空间中的内存thread模块被废弃。用户可以使用threading模块代替。
2025-07-19 09:44:29
823
原创 Python3 MySQL数据库连接
PyMySQL驱动PyMySQL是在Python3.x版本中用于连接MySQL服务器的一个库,Python2中则使用mysqldb。
2025-07-18 19:00:17
797
原创 Python MySQL
MySQL是最流行的关系型数据库管理系统使用mysql-connector来连接使用MySQL,是MySQL官方提供的驱动器安装命令:python -m pip install mysql-connector测试安装成功的代码(import mysql.connector),回车后没有报错则证明安装成功。
2025-07-18 09:03:47
382
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅