Appium之与Jenkins集成发送测试报告

简介: 一、jenkins的环境配置详细见Jenkins环境搭建篇二、Appium+Jenkins构建配置1.登录Jenkins系统,点击‘新建’新建项目2.

一、jenkins的环境配置

详细见Jenkins环境搭建篇

二、Appium+Jenkins构建配置

1.登录Jenkins系统,点击‘新建’

img_128d98e9bcabe26e0b8b361027de53d0.png
新建项目

2.输入项目名称,选择第一个选项,点击保存

img_126dd535c5dd9f823d623be9795ca174.png
项目名称

3.在项目界面选择‘构建触发器’→‘构建’→‘增加构建步骤’中选择‘Execute shell’   

img_dfa89303d7845dfd2120deb30027aba7.png
构建shell指令

4.在Execute shell界面输入如下指令

img_522f14f3f7f978b22e18bb493ca5663b.png
Execute shell界面

5.在构建后操作选择E-mail Notification选项

img_1ef590cfb02f4144c24b6ce1499a1126.png
E-mail Notification

6.在E-mail Notification界面输入接收者邮箱地址,点击保存

img_fdcf9d15ae72d6b9c61278bec3d5ab30.png
邮箱地址

7.点击立即构建

img_1e26d61e5711352de65d47fd0f4e6a72.png
立即构建

8.运行结果,点击返回面板,在Jenkins主界面可以看到如下图所示

img_5584c6332bcbc39505ac98a5a407911c.png
Appium-test项目

配合端收件邮箱收件结果:

img_69b87f384b5f5a350546eaa94e1f93d4.png
收件箱

二、构建过程中需注意以下几点:

1.保障appium和模拟器处于启动链接状态

2.脚本中启动app的目录需与jenkins构建后存放apk的目录一致

3.脚本中生成的html测试报告需存放在统一规定目录下

4.脚本结构及规则

>Common目录:共通的方法

>TestDemo(unittest.TestCase):测试类名;Test+测试的模块名;继承unittest的testcase类

>setUpClass(cls):执行用例之前的初始化操作;配置模拟器信息、测试apk信息,启动app应用;

>tearDownClass(cls):完成用例后的退出处理;

>test_login(self):具体的测试case

>if __name__ == '__main__':脚本主入口;加载用例,形成html格式的测试报告

三、配置过程中遇到的坑

1.点击立即构建,提示ImportError:No module named 'appium'

img_bce32ede41332b938f38bb6e1187f39b.png
问题1

解决方法是:你安装的Python可能有好几个版本,设置指定你当前Python编译器版本(或者用Python绝对路径去运行代码),在Jenkins中的Excute shell中写入Python编译器的绝对路径即可

2.在Jenkins中构建过程中提示:[test] $ sh -xe C:\Windows\TEMP\hudson6299483223982766034.sh系统找不到指定的文件,分析原因是因为选择了Excute shell来执行指令

解决办法是:在‘构建’选择Execute Windows batch command 来执行指令  参考资料:提示找不到系统问题

img_982dc56a15d8ad43fca84c114cb1425e.png
问题2

后续知识将在实际项目中继续优化。。。敬请期待。

参考资料:appium自动化入门-python上海-悠悠1105(PDF文档)

目录
相关文章
|
2天前
|
敏捷开发 监控 Devops
深入探索软件测试中的持续集成与持续部署(CI/CD)实践
【5月更文挑战第13天】 在现代软件开发的快节奏和复杂性中,持续集成(Continuous Integration,CI)与持续部署(Continuous Deployment,CD)成为确保软件质量和加速交付的关键策略。本文将深入探讨CI/CD在软件测试中的应用,解析其核心概念、流程以及面临的挑战,并分享实际案例分析以揭示如何在不断变化的开发环境中维持高效和可靠的软件发布周期。
|
2天前
|
Web App开发 测试技术 C++
Playwright安装与Python集成:探索跨浏览器测试的奇妙世界
Playwright是新兴的跨浏览器测试工具,相比Selenium,它支持Chrome、Firefox、WebKit,执行速度快,选择器更稳定。安装Playwright只需一条`pip install playwright`的命令,随后的`playwright install`会自动添加浏览器,无需处理浏览器驱动问题。这一优势免去了Selenium中匹配驱动的烦恼。文章适合寻求高效自动化测试解决方案的开发者。
14 2
|
2天前
|
机器学习/深度学习 敏捷开发 监控
深入探索软件测试中的持续集成与持续部署(CI/CD)实践
【5月更文挑战第10天】 在现代软件开发周期中,"持续集成"(CI)与"持续部署"(CD)是提升效率、确保质量的重要环节。本文将详细探讨CI/CD在软件测试中的应用,包括其基本概念、实施策略、工具应用及面临的挑战。不同于一般性概述,本文将重点分析如何优化测试流程以适应CI/CD环境,并提出针对性的改进措施。通过实际案例分析,揭示成功实施CI/CD的最佳实践,并讨论如何在不断变化的技术环境中保持测试策略的前瞻性和灵活性。
|
2天前
|
敏捷开发 监控 jenkins
探索自动化测试在持续集成环境中的关键作用
【5月更文挑战第6天】 在快速迭代的软件开发周期中,持续集成(CI)已经成为确保代码质量和加速交付的重要实践。本文将深入探讨自动化测试作为持续集成不可或缺的组成部分,它如何通过减少人为错误、提高测试覆盖率和加快反馈周期来强化软件开发流程。通过对现代自动化测试工具的评估以及真实案例的分析,我们揭示了自动化测试在提升软件可靠性和效率方面的核心价值,并提出了实现高效自动化测试策略的最佳实践。
|
2天前
|
敏捷开发 数据管理 测试技术
探索自动化测试在持续集成环境中的优化策略
【5月更文挑战第6天】 本文旨在深入剖析自动化测试在持续集成(CI)环境中所面临的挑战,并提出一系列创新的优化策略。通过对现代软件开发过程中自动化测试角色的分析,我们揭示了在快速迭代和部署的背景下,如何通过改进测试框架、选择合适的测试工具、以及实施数据驱动测试等手段来提高测试效率和准确性。文章不仅聚焦于技术层面的解决方案,还探讨了团队协作和流程管理对提升自动化测试效能的重要性。
|
2天前
|
设计模式 人工智能 测试技术
深入探究持续集成中的自动化测试策略
【5月更文挑战第3天】 在现代软件开发实践中,持续集成(CI)已成为提高开发效率、确保代码质量和加速产品上市速度的关键因素。自动化测试作为CI流程的核心组成部分,它确保了快速的反馈循环和高质量的构建。本文将探讨在持续集成环境中实施高效自动化测试的策略,包括测试用例的优化、测试环境的管理、以及如何整合最新的测试工具和技术。通过具体案例分析,我们将了解如何构建一个既灵活又健壮的自动化测试系统,以支持不断变化的软件开发需求。
|
2天前
|
敏捷开发 监控 测试技术
探索自动化测试在持续集成中的关键作用
【5月更文挑战第3天】 随着敏捷开发和持续集成(CI)实践的普及,自动化测试已成为确保软件质量和加速交付过程的核心环节。本文旨在深入探讨自动化测试在持续集成环境中的作用,重点分析其在提高测试效率、降低人力成本及维护软件质量保障体系中的重要性。通过实际案例研究,本文揭示了有效实施自动化测试策略的关键因素,并提出了一系列优化建议,以帮助软件开发团队充分利用自动化测试工具,实现持续交付的高效运作。
34 6
|
2天前
|
敏捷开发 监控 测试技术
探索自动化测试工具Selenium Grid的高效集成策略
【4月更文挑战第30天】在现代Web应用的快速迭代和持续部署中,测试自动化已成为确保产品质量的关键。Selenium Grid作为一款支持多种浏览器和操作系统的测试工具,提供了并行执行测试用例的能力,极大地提升了测试效率。本文将深入探讨如何高效地将Selenium Grid集成到现有的测试框架中,以及实施过程中的最佳实践,帮助团队最大化测试覆盖率,同时降低资源消耗。
|
2天前
|
中间件 测试技术 API
探索自动化测试工具的新边界:Selenium与Appium的集成实践
【4月更文挑战第30天】 随着移动应用和Web应用的不断融合,传统的自动化测试工具需要适应新的测试环境。本文将详细分析Selenium和Appium这两款流行的自动化测试工具的集成实践,探讨如何构建一个能够同时支持Web和移动端应用的自动化测试框架。通过对比两者的技术架构、功能特性以及在实际项目中的集成过程,我们旨在为读者提供一个清晰的指导,帮助他们在复杂的应用环境中实现高效、稳定的自动化测试流程。
|
2天前
|
监控 JavaScript 前端开发
【TypeScript技术专栏】TypeScript的单元测试与集成测试
【4月更文挑战第30天】本文讨论了在TypeScript项目中实施单元测试和集成测试的重要性。单元测试专注于验证单个函数、类或模块的行为,而集成测试关注不同组件的协作。选用合适的测试框架(如Jest、Mocha),配置测试环境,编写测试用例,并利用模拟和存根进行隔离是关键。集成测试则涉及组件间的交互,需定义测试范围,设置测试数据并解决可能出现的集成问题。将这些测试整合到CI/CD流程中,能确保代码质量和快速响应变化。