- 博客(62)
- 收藏
- 关注

原创 知识分享导航
##一堆草稿 因为没有找到怎么建立合集的办法 后续会直接在这些标题上插上link,争取四月前写完!(●ˇ∀ˇ●)持续更新中, 是自己的知识小宝库 也分享给大家一起看看一起进步。Jenkins+Newman+Postman实现接口自动化集成。python+unittest框架实现UI自动化。Jenkins+python实现UI自动化集成。python+request框架实现接口自动化。python+pytest框架实现UI自动化。dockerfile语法。python的安装与使用。docker基本语法。
2025-03-20 16:10:20
196
原创 allure结合pytest生成测试报告
结合pytest和Allure可以生成详细而美观的测试报告,帮助测试人员和开发者更好地理解测试结果。这包括测试的执行情况、步骤、附件(如截图)、分类以及优先级标记。下面是如何在pytest中使用Allure。
2025-03-24 17:56:56
611
原创 4、pytest常用插件
变得非常灵活和强大,能够更好地适应不同类型的测试需求。各插件的安装和配置都非常简单,可以帮助你快速集成到现有的。选择使用合适的插件可以显著提升测试的能力和效率。通过组合不同的插件,是一个功能非常强大的测试框架,支持丰富的插件系统。的功能,从而使测试过程更加高效和便捷。
2025-03-24 17:52:49
345
原创 3、pytest实现参数化
在pytest中,参数化(parametrization)是一种强大的功能,可以让你用不同的输入数据重复执行同一个测试函数。这种功能非常有用,可以帮助你显著减少重复代码并提高测试覆盖率。
2025-03-24 17:50:21
503
原创 pytest测试框架所需文件以及各自位置
通过整洁的项目结构和标准命名惯例,你能够更方便地运用pytest来自动发现和运行测试,同时这些结构有助于项目的长期维护和对新成员的理解。共享的夹具和钩子配置,以及明确的测试文件位置和作用分配,将赋予测试代码更好的扩展性和可读性。
2025-03-24 17:46:42
271
原创 2、pytest核心功能(进阶用法)
自定义标记得用途是筛选用例,只执行部分用例,共分为三个步骤在pytest.init注册标记[pytest]addopts = -vs # addopts 用于指定默认的命令行选项markers =login: 登录相关db: 数据库相关upload: 上传相关在用例中通过装饰器添加标记print('使用数据库')在命令行参数中加-m使用标记[pytest]# -v(verbose 模式)用于显示详细的测试执行信息(包括每个测试用例的名称和状态)
2025-03-24 17:31:02
903
原创 1、pytest基本用法
最近在学习pytest的用法 并且用这套框架替换了原来的unittest, 同是测试框架 确实感觉到pytest更加便捷 这边分享给大家我得学习心得。
2025-03-24 16:32:21
333
原创 python中有几种作用域
在 Python 中,作用域决定了变量的可见性和生命周期。Python 主要有以下四种作用域: - 在函数或方法内部定义的变量属于局部作用域。 - 这些变量只能在函数或方法内部访问。 2. 嵌套作用域(Enclosing Scope): - 在嵌套函数中,外层函数的变量对内层函数可见。 - 内层函数可以访问外层函数的变量,但不能直接修改(除非使用 `nonlocal` 关键字)。 3. 全局作用域(Global Scope): - 在模块级别定义的变量属于全局
2025-03-16 21:33:37
263
原创 Pycharm修改默认执行框架为unittest
作为新的测试框架进行测试运行。如果还没有看到相关选项,请确保已经安装并配置 Python SDK。如果在特定项目中没有应用更改,您还可以检查项目级别的配置,以确保设置正确应用于项目中。在 PyCharm 中修改默认的测试框架为。这样设置后,PyCharm 应该会默认使用。
2025-03-10 14:47:07
323
原创 Bruno运行登录接口遇到报错canot found module ‘htmlparser2’怎么解决
避免使用无法加载的 Node.js 模块:在 Bruno 中的脚本可能无法使用普通的 Node.js 模块,因此可以依靠原生浏览器 API 来操作 DOM。确保节点查找逻辑正确无误:使用和来定位和操作 HTML 元素。处理和管理变量:充分利用bru.setVar进行变量设置、测试和调试。可以使用上文中的建议来修改和运行代码。调整后的代码不仅仅解决了模块加载的问题,还与浏览器环境下的原生功能保持一致。
2025-03-04 17:45:26
448
原创 python-数据处理
python处理两张表 表一包含列名类型、数据片段、事件详情等列,表二包含标准值、数据片段等列(没有事件详情列) 首先筛选表一类型=责任碰撞并且根据数据片段去匹配表二 如果匹配到了 将表一中对应的事件详情数据新增到表二中,然后对表二中的事件详情和标准值列进行比对 比对方法为 事件详情中的时间戳(该时间戳被包含在事件详情的值中,在"碰撞发生时间:" 的后面)和标准值列比对 若事件详情的值大于标准值列中的值 将对应的标准列的值改为fail。1. **筛选表一**:筛选出表一中类型为“责任碰撞”的数据。
2025-03-03 16:11:10
186
原创 Python -实例属性的定义与运用
class Car:self.color = color # 实例属性self.model = model # 实例属性# 创建类的实例print(my_car.color) # 输出: Redprint(my_car.model) # 输出: Toyotaclass Car:wheels = 4 # 类属性# 访问类属性print(Car.wheels) # 输出: 4# 所有实例共享类属性print(car1.wheels) # 输出: 4。
2025-02-28 16:57:40
251
原创 Jenkins自动化脚本执行结果为unstable的常见原因
我目前在工作中遇到的第一种情况较多 通过看日志发现报错集中的地方就是我写的case部分执行失败了 大家在debug过程中结合日志查相关的日志文件、测试报告和警告,来查明具体的问题所在,并进行必要的修复或改进。在Jenkins中,如果构建结果被标记为“unstable”(不稳定),通常意味着构建过程中遇到了一些问题,但这些问题并不严重到足以导致构建失败。:通过代码静态分析工具(例如 SonarQube、FindBugs 等)检测到代码质量问题,如代码臭味、潜在的错误或风格问题,但这些问题不足以导致构建失败。
2025-02-27 14:31:32
373
原创 如何生成Junit报告
我想提一嘴儿的是之前也用过allure和unittestreport这种html类型的文件集成到Jenkins上去用 但是效果不尽人意 前者由于Jenkins上的安全问题无法加载allurereport 后者由于css的原因 Jenkins上展示的结果和本地的不一致于是请教了团队里面的负责集成的老师 他告诉我没必要在这个上面花太多精力。因为最终这套测试用起来的话,它是多个项目里某个项目里的某种测试集。在Jenkins上会有各种不同的测试,而且还需要进一步的处理由另一个团队去收集数据做统计。
2025-02-20 17:46:53
1104
原创 如何在Jenkins上查看Junit报告
在构建记录的页面上,如果构建过程中生成了 JUnit 测试报告,通常会有一个 "Test Result" 或者 "Test Report" 的链接。: 在测试结果页面,你可以查看所有测试的概要,包括通过的测试、失败的测试和跳过的测试。例如,如果你想查看最近的一次构建的结果,点击 "Last Successful Build" 或者 "Last Build" 标签。: 一些 Jenkins 设置还支持查看测试结果的历史趋势,从而可以观察项目随时间的变化情况,例如测试覆盖率的提升或下降。
2025-02-20 17:29:54
482
原创 Jenkins上无法查看已成功生成的Junit报告
如果你已确认 JUnit 报告在工作空间中被成功生成,但在 Jenkins 构建页面上却看不到 "Test Result" 或 "Test Report" 的链接,这通常意味着 Jenkins 没有正确地配置用来处理和显示这些报告的步骤。
2025-02-20 17:26:48
540
原创 如何禁止chrome浏览器自动更新
我真的是受够了chromedriver和chrome不兼容的问题 每次调试 我看到浏览器启动之后秒退出我就知道chrome又自动更新了 (翻白眼所以 我要禁止它自动更新!一劳永逸。
2025-02-19 17:00:46
413
原创 Jenkins安装依赖遇到musl兼容问题怎么解决
是一种轻量级的标准 C 库实现,被设计用于嵌入式系统和资源受限的环境中。它主要应用于 Linux 系统,特别是在轻量级 Linux 发行版中,例如 Alpine Linux。仓库的依赖可以帮助提高系统稳定性,特别是在生产环境中。不确定的情况下,最好先在测试环境中作充分验证,调整配置后,再投入至生产环境。在许多现代微服务架构、容器化应用中使用时效性高,这得益于其高效性和其所带来系统基础资源的节约。时已经更新到兼容的最新版本,或者手动回滚到兼容的版本组合。仓库中某些包版本之间不互相兼容导致的。
2025-02-18 15:51:03
1004
原创 Jenkinsdebug:遇到ERROR: unable to select packages:怎么处理
通过实施这些措施可以确保在一个相对更稳定的环境下管理包依赖,降低因为版本不兼容引发的问题。这种策略对于生产环境特别重要,因为它们需要稳定性和可预测性。使用的 repositories 清空,然后添加需要的稳定版本仓库地址。的包仓库为稳定版本而不是。: 在脚本中,通过设置。
2025-02-17 17:47:52
596
1
原创 Piper命令了解
最近弄测试集成 Jenkins上只支持piper命令 和大家一起分享些知识学习下。"Piper" 通常指的是 SAP 的 Project "Piper" 项目,其目的是为持续集成和持续交付(CI/CD)提供一套工具和最佳实践。虽然 Project "Piper" 本身更多是一个框架和一套 Jenkins Pipeline 库,但当提到 Piper 的命令时,通常指的是基于它所建立的工具和脚本。
2025-02-13 15:32:39
636
原创 python处理表格数据 怎么将最后一行数据放到第二行
要在 Python 中处理表格数据并将最后一行移动到第二行,可以使用 Pandas 库。以下是一个详细的步骤和示例代码,帮助你实现这个功能。
2025-02-13 11:09:26
243
原创 Dockfile语法
Dockerfile 是构建 Docker 镜像的核心工具,它为开发人员提供了一种简单而强大的方式来描述容器化应用的构建和运行环境,提高了应用的部署和运维效率。通过借助 Dockerfile,团队可以更好地控制环境一致性,实现高效的敏捷开发和运维。
2025-02-12 16:18:17
1283
原创 Jenkinsfile怎么写
学习和运用 Jenkinsfile 是熟练使用 Jenkins 进行持续集成和持续交付(CI/CD)流程的关键一步。
2025-02-12 16:02:01
1033
原创 PermissionError: [Errno 13] Permission denied: ‘testfinal_merged_table.xlsx‘ 怎么处理
通常表示在尝试保存一个文件时,Python没有权限这么做。这种错误可能由几种情况引起。
2025-02-11 11:29:23
154
原创 Jenkins pipline怎么设置定时跑脚本
在Jenkins中,定时跑脚本(例如定时执行Pipeline)的主要方法是通过配置Jenkins Pipeline的定时触发器。你可以使用Cron表达式来定义定时任务的触发时间。这里介绍两种基于cron表达式的方法供大家参考 我一般是用方法一 方法二大家可以当作了解 但是原理都是一样的首先先了解下cron表达式语法。
2025-01-23 17:47:32
1016
1
原创 Jenkins上生成的allure report打不开怎么处理
我自己用的是方法一里面的清空属性值解决的 比较省事儿 不过要注意清空这些属性可以临时解决某些兼容性问题或进行特定的调试工作,但需要注意的是,这会显著降低Jenkins的安全防护能力。看到这篇文章的同学自己可以酌情选择适合自己的方法去解决该问题。
2025-01-23 15:56:42
1302
原创 python处理两张excel表格 取表1的A列数据和表2的A列数据进行匹配 若匹配到,将表1中BCD列的值新增到表2中(表2中没有BCD列新增到表2的用例编号列之后 要注意的是新增到表二中的值需要与
为了处理两张 Excel 表格,并按照你的要求来匹配和新增数据,我们可以使用pandas库。以下是一个详细的 Python 脚本示例,假设你的两个 Excel 文件分别叫做file1.xlsx和file2.xlsx。
2025-01-13 16:01:41
316
原创 python处理两张excel表格 取表1的A列数据和表2的A列数据进行匹配 若匹配到,将表1中BCD列的值放到表2中(表2已有BCD列 要注意的是被挪到表二中的值需要与被匹配到的A列中的值对应即在同
为了实现您的需求,即在Python中处理两张Excel表格,根据A列匹配的结果来更新表2中的BCD列,我们可以使用pandas库。
2025-01-10 15:20:35
355
原创 报错 pandas.errors.inavlidaindexerror: Reindexing only valid with uniquely valued index objects
你收到的错误,通常发生在尝试对包含重复索引的数据框进行重索引操作时。在你的具体场景中,很可能是由于尝试对DataFrame进行concat或者merge操作时,出现了重复的索引。我们可以通过确保索引列的唯一性来避免这个问题。
2025-01-09 17:31:38
398
原创 在上篇处理的基础上 取表二的A列数据匹配表一的A列数据,如果匹配不上,把A列的值拿出来,如果匹配上了不做处理
如果你想在上面已经实现的基础上,再取表二的A列数据与表一的A列数据进行匹配,并将未匹配的A列值单独拿出来,就需要在函数中增加一步操作。
2025-01-09 15:23:09
233
原创 python处理两张excel表格 取表一的A列数据和表二的A列数据进行匹配 若未匹配上 将表一中BCD列填入表二(表二有BCD列 不需要新增列名) 若匹配上了,不做处理
要实现这个功能,您可以使用pandas库来处理两个 Excel 表格。这包括读取 Excel 文件,匹配ID列的数据,填充数据,最后返回未匹配的ID列表。
2025-01-09 10:30:38
502
原创 python在excel表某一列之后插入六列并命名名字
通过上述步骤和代码,可以在 Excel 表中的某一列之后插入多列,并为这些新列命名。openpyxl库提供了对 Excel 文件操作的一系列方法,使得这种操作变得非常简单和灵活。根据你的实际需求,可以调整列索引、列数以及新列的名称。
2025-01-09 10:24:12
663
原创 webdriver显式等待的具体用法
显式等待(Explicit Wait)是一种强力的等待方式,它允许程序在继续执行之前等待特定条件满足,例如等待某个元素变得可见、可点击或存在于 DOM 中。显式等待能使测试更加灵活,适应动态加载的页面元素。在 Selenium 中,显式等待通常通过类结合模块来实现。显式等待是 Web 自动化中非常强大的工具,它能够使得 WebDriver 在处理动态网页时更加灵活和稳定。通过结合和模块,您可以精确地控制等待条件,确保在页面加载完成或元素满足条件之前不会继续执行。
2025-01-08 16:07:38
737
原创 python中常用的等待时间以及用法
4. 测试框架中的等待(如 pytest)在测试框架中,等待操作确保在测试过程中时间依赖项能够正常工作。用法示例:
2025-01-08 15:14:28
351
原创 lamba函数的用法
lambda函数在 Python 中提供了一种简洁的方式来定义小型匿名函数,特别适用于需要短小函数的场景。它们常用于mapfiltersorted等高阶函数中,以及像这样的等待模式中,能够很好提高我们代码的简洁性和可读性。理解如何使用lambda函数对于编写高效的 Python 代码还是非常有帮助滴。
2025-01-08 15:07:00
446
原创 Allure结合unittest的安装与运用
通过以上步骤,您可以成功安装并配置 Allure 报告系统,集成到 Python 测试框架pytest安装 JDK 和 Allure CLI。安装pytest和。编写测试代码并使用 Allure 注解增强报告信息。使用pytest运行测试并生成 Allure 报告数据。使用 Allure CLI 工具生成和查看报告。通过这种方式,可以轻松生成丰富、详细的测试报告,从而更好地管理和分析测试结果。
2025-01-08 11:41:08
1028
原创 本地导入封装的模块 在docker内报错ImportError
本地封装了一个login方法 在写testcase的时候去复用这个方法 但是进入docker运行的时候一直报上面的错误。
2025-01-07 16:16:04
628
原创 Unittest中的执行顺序
nittest 框架按照如下顺序执行测试方法:模块级别 setUpModule 和 tearDownModule:在整个模块中的所有测试方法运行之前,setUpModule 方法会被调用。在所有测试方法运行之后,tearDownModule 方法会被调用。类级别 setUpClass 和 tearDownClass:在每个测试类中,所有测试方
2025-01-07 15:58:31
334
原创 pytest和unittest的区别
pytest和unittest是 Python 中常用的两个测试框架。以下是对pytest和unittest。
2025-01-07 15:47:10
1209
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人