初次尝试使用jenkins+python+appium构建自动化测试
初次尝试使用jenkins+python+appium构建自动化测试
因为刚刚尝试使用jenkins+python+appium尝试,只是一个Demo需要很多完善,先记录一下今天的成果,再接再厉
第一步:在本地的window系统安装jenkins
1) Jenkins下载地址:http://mirrors.jenkins-ci.org
2) 启动jenkins:java –jar Jenkins.war
3) 使用chrome浏览器打开127.0.0.1:8080/
备注:我本地未安装tomcat
第二步:脚本的编写(我的上一篇记录有关于appium第一条用例的)
1) 这条用例在上一条的基础之上我加入了HTMLtestrunner测试报告
2) 我使用的是网上修改后的HTMLtestrunner适用于python3的,将htmltestrunner.py放到D:\python\Lib目录下
3) 脚本代码如下:
import unittest
import os
from selenium import webdriver
import HTMLTestRunner class apptest(unittest.TestCase):
def setUp(self):
PATH = lambda p: os.path.abspath(
os.path.join(os.path.dirname(__file__), p)
)
desired_caps = {}
desired_caps['deviceName'] = 'VBJ4C18607003439' # adb devices查到的设备名
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '8.1.0' # android 系统版本
desired_caps['appPackage'] = 'com.aerozhonghuan.serialporttool' # 被测App的包名
desired_caps['appActivity'] = 'com.aerozhonghuan.serialporttool.MainActivity' # 启动时的Activity
self.driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
def testApp(self):
driver = self.driver
el = driver.find_element_by_id("com.aerozhonghuan.serialporttool:id/btn_heartbeat")
el.click()
print('第一个appium脚本运行成功了')
filename = r'E:\aaaaaa\report.html' #E:\aaaaaa\report.html 这个目录下生成测试报告
fp = open(filename, 'wb+')
runner = HTMLTestRunner.HTMLTestRunner(
stream=fp,
title=u'APP自动化测试'
)
runner.run(self.suite())
fp.close()
def suite(self):
suite = unittest.TestSuite()
suite.addTest(apptest("testApp"))
return suite def tearDown(self):
driver = self.driver
driver.quit()
if __name__ == '__main__':
unittest.main()
4) 报告如下:
第三补:Jenkins构建工程
1) 登录jenkins账号->新建任务->构建一个自由风格的软件项目->在构建步骤中选择执行windows批处理命令
2) 数据python的执行命令如: D:\python.exeD:\pycharm\test\appUnnitest.py
3) 保存后->点击构建->查看构建历史->控制台输出,即执行完成
4) Jenkins控制台如图:
初次尝试使用jenkins+python+appium构建自动化测试的更多相关文章
- jenkins+maven+junit构建自动化测试,整合junit xml生成直观的测试报告[留存]
在自动化测试过程中,测试报告最能直观的体现测试的价值,之前一直使用maven+junit来构建我的自动化测试,但这样有几个缺点,一是,不能定时构建自动化任务(也许是我没有找到maven有没有提供这样的 ...
- python+appium+unittest自动化测试框架环境搭建
一.基础软件准备 1.python 版本最新版本,python的IDE使用pycharm.具体的下载链接: python https://www.python.org/ pycharm:https:/ ...
- 如何快速搭建基于python+appium的自动化测试环境
首先申明本文是基本于Python与Android来快速搭建Appium自动化测试环境: 主要分为以下几个步骤: 前提条件: 1)安装与配置python环境,打开 Python官网,找到“Downloa ...
- Jenkins持续集成构建自动化测试项目
1.配置内容安全策略(配置一次): 1.1.构建一个自由风格的软件项目 1.2.Build Triggers:Build when job nodes start 1.3.Build:Execute ...
- Python+Appium实现自动化测试
一.环境准备 1.脚本语言:Python3.x IDE:安装Pycharm 2.安装Java JDK .Android SDK 3.adb环境,path添加E:\Software\Android ...
- python+appium+PyCharm==自动化测试APP环境
1.点击SDK下面的uiautomatorviewer 2.启动夜神3.启动adb--->在cmd adb -version adb connect 127.0.0.1:62001 这里的配置环 ...
- linux+jenkins+python+svn 自动化测试集成之路
本文背景: 背景1---个人基础: 本机win7上安装pycharm,使用python搭建API自动化测试框架,本地运行Pass.本机上搭建jenkins,创建测试任务,定时构建Pass. 背景2-- ...
- 基于python+Testlink+Jenkins实现的接口自动化测试框架V3.0
基于python+Testlink+Jenkins实现的接口自动化测试框架V3.0 目录 1. 开发环境2. 主要功能逻辑介绍3. 框架功能简介 4. 数据库的创建 5. 框架模块详细介绍6. Tes ...
- 孤荷凌寒自学python第五十一天初次尝试使用python连接Firebase数据库
孤荷凌寒自学python第五十一天初次尝试使用python连接Firebase数据库 (完整学习过程屏幕记录视频地址在文末) 今天继续研究Firebase数据库,利用google免费提供的这个数据库服 ...
随机推荐
- developer的996,需要谁来拯救
不为996辩护,但向奋斗者致敬! 随着996.icu愈演愈烈,不仅是国际友人发文问候,连国内互联网的大佬都被卷进风波,整理下大致思路如下: 马云:因为有自己想要实现的目标,因为有奔头,所以我们努力工作 ...
- Atcoder F - LCS (DP-最长公共子序列,输出字符串)
F - LCS Time Limit: 2 sec / Memory Limit: 1024 MB Score : 100100 points Problem Statement You are gi ...
- scrapy之多环境的选择使用
scrapy之多环境的选择使用 个人主机主机上可能存在多个python环境,当在终端中使用scrapy时,容易产生错误,无法使用到自己想使用的那个python,如何解决这个问题呢? 出现这类问题时,直 ...
- VO和DO转换(三) Dozer
VO和DO转换(一) 工具汇总 VO和DO转换(二) BeanUtils VO和DO转换(三) Dozer VO和DO转换(四) MapStruct 可参考的资料: dozer官网 Dozer(Jav ...
- MySQL 通过多个示例学习索引
最近在准备面试,关于索引这一块,发现很多以前忽略的点,这里好好整理一下 首先为什么要建立索引 一本书,有章.节.段.行这种单位. 如果现在需要找一个内容:第9章>第2节>第3段>第4 ...
- 18-vue-cli脚手架项目中组件的使用
在webpack-simple模板中,包括webpck模板.一个.vue文件就是一个组件. 为什么会这样呢?因为webpack干活了!webpack的将我们所有的资源文件进行打包.同时webpack还 ...
- Docker防主机意外断电导致容器实例无法驱动解决方案:UPS || write barrier || 上btrfs定期snapshot
Write barrier - Wikipediahttps://en.wikipedia.org/wiki/Write_barrier R大在在介绍CMS时提到了write barrier写屏蔽的概 ...
- SQL server 生成数据字典
Set nocount on ), ) DECLARE Tbls CURSOR FOR ),isnull(g.[value],'-')) AS TABLE_COMMENT FROM INFORMATI ...
- asp.net core下一个简单的分页技术
在做web应用的时候免不了要对数据进行分页,我最近在做asp.net core的开发的时候就遇到了这个需求,现在简单的记录一下: public class PaginatedList<T> ...
- Day 3-4 函数进阶
1.名称空间 定义:Python使用叫做命名空间的东西来记录变量的轨迹.命名空间是一个 字典(dictionary) ,它的键就是变量名,它的值就是那些变量的值.是存放变量和值的内存地址的绑定关系的空 ...