Jenkins学习

基于Selenium的测试

Jenkins中新建⾃由⻛格项⽬

创建⾃由⻛格项⽬

源码管理配置:

需要配置Git地址链接(SSH格式),并添加Checkouttosub-directory选项

项⽬类型选择:必须选择"⾃由⻛格"项⽬类型,这是Jenkins中最基础的项⽬配置⽅式

项⽬类型选择:创建⾃动化测试项⽬需选择"FreeStyleproject"类型,适

合需要多种配置的复杂项⽬

节点限制配置:

通过"Restrict where this project can be run"指定运⾏节点(Master-Slave模式:任务可分配到不同Slave上执⾏)

演示环境选择master节点运⾏

实际部署时需根据测试环境选择对应节点

构建环境配置

环境变量加载:

通过source ~/.bash_profile加载⽤户环境变量

确保构建时能获取到PATH等关键环境变量

设置运⾏参数(有/⽆界⾯)

参数化构建:通过Boolean Parameter配置名为"using_headless"的参数,默认值设为false(有界⾯运⾏)代码中通过os.environ"using_headless"获取参数值

参数⽤途:控制测试以有界⾯或⽆界⾯⽅式运⾏,在构建时可灵活选择

运⾏模式

参数描述:添加"采⽤⽆界⾯形式运⾏"的描述⽂本,提⾼参数可读性添加运⾏代码(pytest命令)

命令⾏执⾏:⾃动化测试必须通过命令执⾏,不能依赖IDE界⾯操作

pytest命令:pytest -v test/web_ut.py -o junit_family=xunit2 --junit-xml=pytests.xml

环境清理:建议添加删除旧报告命令,避免历史结果影响新测试报告 rm -f file.txt

添加JUnit测试报告

报告格式兼容:虽然使⽤Python测试,但通过xunit2格式输出与Java的

JUnit兼容的XML报告

格式转换技巧:利⽤--junit-xml参数将pytest结果转换为标准JUnit格式

⽂件路径指定:测试报告输出路径应设置为pytests.xml

添加构建后操作:

报告路径配置:在Post-build Actions中添加Selenium_Python/pytests.xml路径

⾼级选项:

勾选"Retain long standard output/error"保留完整⽇志

设置健康报告放⼤因⼦为1.0

允许空结果不导致构建失败

基于Appium的测试

依赖包:pytest-testconfig(安装命令:pip install pytest-testconfig)

报告⽣成:

⽀持JUnit格式测试报告输出

命令参数示例:pytest -v test/web_ut.py -o junit_family=xunit2 --junit-xml=pytest.xml

报告内容包含通过/失败状态等详细执⾏结果

构建步骤:

source ~/.bash_profile

清除旧报告:rm -f pytest.xml

执⾏测试并⽣成报告:~/venv/bin/pytest -v test/web_ut.py...

配置加载⽅式:

在pytest命令中挂载配置⽂件参数pytest --tc-file=config.json --tc-format=json test_file.py

通过pytest_testconfig模块读取配置

Jenkins集成:使⽤⾃由⻛格任务集成⾃动化测试任务

触发⽅式:

定时触发

代码提交触发

⽗⼦任务联动触发

报告发布:

在Post-build Actions中添加"Publish JUnit test result report"

指定报告路径:iSelenium_Python/pytest.xml

注意:每个项⽬只能添加⼀个JUnit报告配置

相关推荐
一隅论数智1 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
XiHongShi20161 天前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
爱吃苹果的日记本1 天前
离散数学第六课
学习·离散数学
这个DBA有点耶1 天前
MVCC深入:Read View、版本链与快照读——InnoDB并发控制的内核
数据库·mysql·架构
DBA_G1 天前
从地面到云霄:GBase数据库在民航三大场景的落地实践
数据库
自由能燃气设备1 天前
商用全预混低氮冷凝锅炉免费方案vs付费方案对比+选型避坑指南
大数据·数据库·人工智能
科创致远1 天前
科创致远 ESOP 系统核心效能与实战价值展示
大数据·数据库·人工智能·精益工程
AI职业加油站1 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
旖旎夜光1 天前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控