专栏首页猪圈子python+appium+夜神模拟器+jenkins进行android自动化测试

python+appium+夜神模拟器+jenkins进行android自动化测试

坚持梦想

就算所有人都不支持你。这条路会很曲折,你也会一度认为是不是自己选错了,但只要坚持,就算最后没有成功,但努力了就不会有遗憾。

android自动化测试

小贴士

面试呢,运气也是一方面,这个我们把我不住。但是我们能把握住的是,知识的储备和积累,还有一个重点就是一定要自信,不管你是对是错,自信满满的去向别人述说,成功率都会大大提高的。最后希望大家都能找到满意的工作!加油

  • 1.环境搭建

1 Jdk 安装包安装 安装完成后配置环境变量 新增JAVA_HOME为jdk安装路径C:\Program Files\Java\jdk1.8.0_111

Path中增加%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

2Androidsdk 解压即可 配置环境变量,同上

Path中增加sdk的tools和platform-tools

3Python2.7安装包安装

安装完成后配置环境变量

Path中增加 C:\Python27;C:\Python27\Scripts; C:\Python27\ \Lib\site-packages

4 Appium 安装包安装 安装完成后配置环境变量

Path中增加: D:\Program Files\Appium;

D:\Program Files\Appium\node_modules\.bin

5 Appium-Python-Client

pip install Appium-Python-Client 进入命令行直接安装

6夜神模拟器 安装包安装

7 HTMLTestRunner.py 直接将py文件拷贝在python的site-packages目录下用于生成html格式测试报告

  • 2.启动appium

打开Appium,点击右上角Start按钮

输出如下,代表启动成功

3.链接夜神模拟器

直接点击nox.exe启动模拟器

进入nox_adb.exe目录,链接模拟器;具体如下:

注意:如果夜神模拟器的adb版本和androidsdk的adb版本不一致,需将androidsdk中platform-tools目录下的adb.exe拷贝到模拟器的bin目录,并修改为nox_adb.exe

  • 4.界面元素定位

在AndroidSDK/tools目录下,双击uiautomatorviewer.bat;点击如图按钮可获取当前运行模拟器的界面截图

点击界面元素,可查看其属性。可以使用resource-id、text、class等进行界面元素的定位

  • 5.与jenkins集成

在构建后增加执行python脚本的步骤即可;

注意几点:

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

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

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

  • 6.脚本结构及规则

Common目录:共通的方法

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

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

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

test_login(self):具体的测试case

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

本文分享自微信公众号 - 猪圈子(Tester-sc)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-11-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Appium服务启动,连接模拟器与真机方案

    如果你已经搭建好Appium的环境后,接下来想对一款APP的进行自动化测试的话。那么首先得让appium连接你的模拟器或者真机。才能开展测试。本文尝试用不同的方...

    测试小兵
  • 爬虫专栏第三章介绍

    因为猪哥写文章并不是将所有的功能和方法列一遍而已,我觉得这些大家完全可以在网站找到,所以真的没必要。

    测试小兵
  • 一文带你认识adb

    - adb常用于通过电脑端与模拟器或者真实设备交互。在某些特殊的情况下进入不了系统,adb此时就发挥自身作用,借助adb,人们可以用电脑来控制Android上面...

    测试小兵
  • Range单元格对象方法(四)PasteSpecial方法

    选择性黏贴也是excel中经常使用到的功能,在复制数据后根据需求进行选择性黏贴。具体的选择性黏贴选项如下:

    无言之月
  • Leetcode 136 Single Number

    Given an array of integers, every element appears twice except for one. Find th...

    triplebee
  • apache+tomcat9.0+mod_jk+java1.8-私密版

    https://blog.csdn.net/kesixin/article/details/77779021 在这个网页下找对应的mod_jk下载包配合上边网址...

    逐梦的青春
  • SpringMvc面试题

    f-sm-1. 讲下SpringMvc和Struts1,Struts2的比较的优势

    yaohong
  • 如果把Python代码写成这样子就太难看了

    本着博采众家之长的想法,前几天买了几本Python爬虫、大数据和机器学习方面的书回来看,故步自封、闭门造车是绝对不行的。粗略翻看了一下,学到了不少的东西,但是也...

    Python小屋屋主
  • apache2.4+tomcat8整合mod_jk

    apache2.4版本需要手动安装apr、apr-util以及prce,可以参考如下网址。

    angelo
  • OpenNF-支持网络功能控制创新

    作者简介:刘宏岩,福州大学数计学院2016级计算机科学与技术(实验班)本科生,主要研究方向为软件定义网络SDN、网络功能虚拟化NFV。

    SDNLAB

扫码关注云+社区

领取腾讯云代金券