初次尝试使用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构建自动化测试的更多相关文章

  1. jenkins+maven+junit构建自动化测试,整合junit xml生成直观的测试报告[留存]

    在自动化测试过程中,测试报告最能直观的体现测试的价值,之前一直使用maven+junit来构建我的自动化测试,但这样有几个缺点,一是,不能定时构建自动化任务(也许是我没有找到maven有没有提供这样的 ...

  2. python+appium+unittest自动化测试框架环境搭建

    一.基础软件准备 1.python 版本最新版本,python的IDE使用pycharm.具体的下载链接: python https://www.python.org/ pycharm:https:/ ...

  3. 如何快速搭建基于python+appium的自动化测试环境

    首先申明本文是基本于Python与Android来快速搭建Appium自动化测试环境: 主要分为以下几个步骤: 前提条件: 1)安装与配置python环境,打开 Python官网,找到“Downloa ...

  4. Jenkins持续集成构建自动化测试项目

    1.配置内容安全策略(配置一次): 1.1.构建一个自由风格的软件项目 1.2.Build Triggers:Build when job nodes start 1.3.Build:Execute ...

  5. Python+Appium实现自动化测试

    一.环境准备 1.脚本语言:Python3.x    IDE:安装Pycharm 2.安装Java JDK .Android SDK 3.adb环境,path添加E:\Software\Android ...

  6. python+appium+PyCharm==自动化测试APP环境

    1.点击SDK下面的uiautomatorviewer 2.启动夜神3.启动adb--->在cmd adb -version adb connect 127.0.0.1:62001 这里的配置环 ...

  7. linux+jenkins+python+svn 自动化测试集成之路

    本文背景: 背景1---个人基础: 本机win7上安装pycharm,使用python搭建API自动化测试框架,本地运行Pass.本机上搭建jenkins,创建测试任务,定时构建Pass. 背景2-- ...

  8. 基于python+Testlink+Jenkins实现的接口自动化测试框架V3.0

    基于python+Testlink+Jenkins实现的接口自动化测试框架V3.0 目录 1. 开发环境2. 主要功能逻辑介绍3. 框架功能简介 4. 数据库的创建 5. 框架模块详细介绍6. Tes ...

  9. 孤荷凌寒自学python第五十一天初次尝试使用python连接Firebase数据库

    孤荷凌寒自学python第五十一天初次尝试使用python连接Firebase数据库 (完整学习过程屏幕记录视频地址在文末) 今天继续研究Firebase数据库,利用google免费提供的这个数据库服 ...

随机推荐

  1. babel-polyfill使用与性能优化

    文章首发于笔者的个人博客 文章概览 本文主要内容包括:什么是babel-polyfill,如何使用,如何通过按需加载进行性能优化. 本文所有例子可以在 笔者的github 找到. 什么是babel-p ...

  2. js canvas图片压缩

    function preview_picture(pic){ var r=new FileReader(); r.readAsDataURL(pic); r.onload=function(e){ d ...

  3. 六、input框中的数字(金额)只能输入正整数

    <input type="text" placeholder="请输入整数" onkeyup="this.value=this.value.re ...

  4. php 简单的学习GD库绘制图片并传回给前端实现方式

    1.基本的GD库绘制图片汇总 2.后台实现小案例 <?php // $img = imagecreatetruecolor(200,40); // var_dump($img); // 利用GD ...

  5. python中filter(),reduce()函数

    filter()函数 是 Python 内置的另一个有用的高阶函数,filter()函数接收一个函数 和一个list,这个函数的作用是对每个元素进行判断,返回 True或 False,filter() ...

  6. pandas数据清洗策略2

    首先,我们先要读入数据: 然后检查数据出现的问题: 1.没有表头,增加表头 2.去除重复值: df.duplicate()使用布尔数据查看数据表中是否有重复值,df.drop_duplicates() ...

  7. Elasticsearch 关键字:索引,类型,字段,索引状态,mapping,文档

    1. 索引(_index)索引:说的就是数据库的名字.我这个说法是对应到咱经常使用的数据库. 结合es的插件 head 来看. 可以看到,我这个地方,就有这么几个索引,索引就是数据库,后面是这个数据库 ...

  8. iOS-拍照后裁剪,不可拖动照片的问题

    2016.07.08 15:04* 字数 1837 阅读 6066评论 6喜欢 26赞赏 1 问题 在项目中,选择照片或拍照的功能很长见,由于我之前采用系统自带的UIimagePickViewCont ...

  9. jQuery学习(监听DOM加载)

    jQuery的extend方法 function njQuery() { } /* njQuery.extend = function (obj) { // 此时此刻的this就是njQuery这个类 ...

  10. 使用jmeter来发送json/gzip格式数据 --------笔记

    一.使用jmeter来发送gzip数据 有时候我们需要模拟在客户端将数据压缩后, 发送(post)到服务器端. 通常这种情况,会发生在移动终端上. 这样做的好处, 是可以节省流量.  当然, 服务器返 ...