appium

appium----Monkey测试

一个人想着一个人 提交于 2020-04-24 22:51:15
  做过app测试的应该都知道Monkey测试,今天简单的介绍下Monkey如何测试 什么是Monkey monkey测试的原理就是利用socket通讯的方式来模拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常。当Monkey程序在模拟器或设备运行的时候,如果用户出发了比如点击,触摸,手势或一些系统级别的事件的时候,它就会产生随机脉冲,所以可以用Monkey用随机重复的方法去负荷测试你开发的软件。 环境依据 Monkey属于Android自带的,主要依据adb命令,安装Android-sdk,不懂的可以去看下小编的另一篇博客-- Android-SDK , adb命令 。 Monkey能做什么 Monkey 主要用于Android 的压力测试 测试app的稳定性,性能, 主要目的就是为了测试app 是否会Crash,Anr,也可以压测时间长看看app是否存在内存泄漏 Monkey简单使用 Monkey格式 # monkey命令 adb shell monkey –p 包名 -v (-s) 100 # Adb shell 这个是进入android的shell环境 # Monkey 这个是调用shell里面的monkey工具 (monkey是每个手机出场自带的,我们输入指令是去唤醒它) # -p 包名 # -v 用亍指定反馈信息级别(信息级别就是日志的详细程度) #

自动化测试 Appium之Python运行环境搭建 Part1

二次信任 提交于 2020-04-24 17:15:13
Appium 之 Python运行环境搭建 Part1 by:授客 QQ:1033553122 实践环境 Win7 Python 3.4.0 JAVA JDK 1.8.0_121 node.js8.11.1LTS 下载地址: https://nodejs.org/en/ Appium-Python-Client Appium-Python-Client-0.26.tar.gz 下载地址: https://pypi.org/project/Appium-Python-Client/#files http://appium.io/downloads.html appium-desktop-Setup-1.5.0-ia32.exe 下载地址: https://github.com/appium/appium-desktop/releases/tag/v1.5.0 Android SDK installer_r24.4.1-windows.exe 下载地址 http://tools.android-studio.org/index.php/sdk appium-uiautomator2-driver 环境部署 1、安装Java JDK并配置环境变量 2、安装Python 3、安装node.js 安装完成后,检测下是否成功 cmd进入控制台,输入npm命令 3、安装Appium-Python

Appium+Python app自动化测试之脚本启动和停止Appium服务

只谈情不闲聊 提交于 2020-04-24 15:35:25
Appium+Python app自动化测试之脚本启动和停止Appium服务 研究了一段时间的Appium android app的自动化测试,工作中需要连接多台手机终端同时执行测试用例,我实现的方式是获取用例中需要执行用例的设备id个数以及实际连接到的设备数(通过adb devices获取),然后启动相应数量的Appium 服务,以便每个设备执行时并发进行并且互不影响。当然也可以通过selenium grid来实现,只是目前还在学习研究中,还是先把目前启动多个appium服务实现的方式记录下来。 一、Windows下启动单个appium服务 需要启动多个appium服务,那必须为每个服务指定端口。 appium -a 127.0.0.1 -p 4726 --bootstrap-port 4780 --session-override --log "E:/appium" --command-timeout 600 通过该命令启动一个端口为4726,bootstrap端口为4780,Appium log存放路径为E盘,session可以覆盖并且命令超时为600s Appium服务,访问的URL地址为:http://127.0.0.1:4726/wd/hub。 为什么在这里指定bootstrap端口呢?当不指定bootstrap端口时

(appium+python)UI自动化_09_unittest批量运行测试用例&生成测试报告

為{幸葍}努か 提交于 2020-04-24 15:33:32
前言 上篇文章【 (appium+python)UI自动化_08_unittest编写测试用例 】讲到如何使用unittets编写测试用例,并执行测试文件。接下来讲解下unittest如何批量执行测试文件并生成测试报告。 简单实例 实例讲解 一、 项目路径获取 project_name:项目名称,需更换为自己项目的名称 project_path:项目路径,获取思路 os.path.abspath(__file__):获取当前文件路径 split(project_name)[0]:通过项目名切割出项目上级目录 os.path.join():拼接,传入项目上级目录、项目名拼接出项目路径 二、discover加载测试用例 1, 需从unittest引入defaultTestLoader 2, discover(self,start_dir,pattern=‘test*.py’,top_level_dir=None)包含三个有效参数 start_dir:执行用例目录 pattern:用例名匹配顾泽,默认test*.py(匹配test开头的所有脚本) top_level_dir:顶层目录名称,一般默认None(可不传值) 实例中start_dir传入的是case_path(路径拼接获取,大家可以根据自己的用例位置进行拼接) 三、生成测试报告 1,需先导入报告文件 HTMLTestRunner

移动端测试——APP元素定位操作 (3)

北战南征 提交于 2020-04-24 14:53:42
一、appium基础API讲解 1.1 APP元素定位操作 建议: 使用显示等待 能用id、class定位就不用xpath定位 只要看的见的,用xpath的text就是万能的 手工测试主要通过可见按钮操作,而自动化是通过元素进行交互操作 元素的基本定位基于 当前屏幕范围内 展示的 可见 元素 前置代码 # 导入driver对象 from appium import webdriver import time # server 启动参数 desired_caps = {} # 设备信息(系统、版本、设备号) desired_caps['platformName'] = 'Android' desired_caps['platformVersion'] = '9' desired_caps['deviceName'] = '192.168.72.103:5555' # app信息(包名、启动名) desired_caps['appPackage'] = 'com.android.settings' desired_caps['appActivity'] = '.Settings' # 声明driver对象 driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) time.sleep(5) #

移动端测试——APP元素信息、事件操作、模拟手势API(4)

喜夏-厌秋 提交于 2020-04-24 14:22:48
appium基础API 1.1 APP元素信息操作API 介绍手机端元素信息的获取以及基本的输入操作 前置代码 # 导入driver对象 from appium import webdriver import time # server 启动参数 desired_caps = {} # 设备信息(系统、版本、设备号) desired_caps['platformName'] = 'Android' desired_caps['platformVersion'] = '9' desired_caps['deviceName'] = '192.168.72.103:5555' # app信息(包名、启动名) desired_caps['appPackage'] = 'com.android.settings' desired_caps['appActivity'] = '.Settings' # 声明driver对象 driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) try: pass except Exception as e: print(e) finally: # 关闭驱动对象 driver.quit() 1.1.1 点击元素 看前面的知识 1.1.2 发送数据到输入框 方法:value

Airtest-UI 自动化集大成者

 ̄綄美尐妖づ 提交于 2020-04-24 14:15:01
前言 Airtest是由网易研发的一款基于Python的、跨平台的UI自动化测试框架,基于图像识别原理,适用于游戏和App。该项目目前已在Github上面开源: https://github.com/AirtestProject/Airtest 官网地址: http://airtest.netease.com/ 官方文档手册非常详细,建议大家入门可以先去看下相关的文档说明。 为什么需要Airtest? 众所周知,UI层测试按照平台种类划分有Windows、Linux、Android、Web、小程序等 针对于移动端Android & IOS平台,有最火的Appium测试框架 http://appium.io/ Web端有selenium测试框架 http://seleniumhq.org/ windows应用平台有AutoIT、Pywinauto 而业界针对游戏类的应用并没有比较好的解决方案,而Airtest测试框架应运而生,基于底层的Airtest和poco: Airtest:基于Python的、跨平台的UI自动化测试框架,基于图像识别原理,适用于游戏和App。 Poco:基于UI控件搜索的自动化测试框架,其核心优势是除了对Android、IOS之外,对游戏也是支持的,同时也支持微信小程序、微信小游戏和H5应用。 Airtest还非常贴心的配备了Airtest IDE

(appium+python)UI自动化_02_appium启动手机app

时间秒杀一切 提交于 2020-04-24 14:14:36
前提:需先安装配置好appium+python自动化环境,已配置好环境的小伙伴可以参考以下步骤启动Android app,具体步骤如下: 一、USB连接手机 (1)手机USB连接电脑 (2)手机打开开发者模式、USB调试功能 二、基础信息配置 1,获取设备号 终端获取设备号,指令:adb devices 2,获取apk包名、activity (1)打开终端 (2)输入指令“aapt dump badging /Users/alisa/Downloads/weixin_1520.apk” 备注:记得将apk路径更换成自己测试的apk路径,拖动apk至终端即可获得apk路径 (3)获取包名 package字段后name值,即为包名 (4)获取activity launchable-activity字段name值,即为activity 3,基础信息配置 基础连接信息如下(以微信app为例): 'platformName': 操作平台 'deviceName': 设备名称 'platformVersion':系统版本号 'appPackage': apk包名 'appActivity':apk activity 'noReset': 在此会话之前不要重置应用程序状态,即非初始化。参数值:true, false 更多参数信息可参考: https://www.cnblogs.com/D666

python+appium 自动化1--启动手机京东app

冷暖自知 提交于 2020-04-24 14:13:12
出处:https://www.cnblogs.com/yoyoketang/p/6128735.html 前言: 环境搭建好了。接下来先体验下如何启动app--1、首先获取包名;2、然后获取launcherActivity。获取这两个关键东西的方法很多,下面我们使用一个sdk自带的实用工具aapt。 aapt:Android Assert Packaging Tool,在SDK的build-tools目录下,该工具可以查看apk包名和launcherActivity,当然还有更多功能。 一、下载aapt 1.查看android sdk--build-tools目录下是否有aapt。 2.若无,按如下步骤下载 3.下载好后,aapt的地址追加到path环境变量中。 ;D:\ccnn\android-sdk\build-tools\28.0.3\ 4.打开cmd,输入aapt出现如下图界面,说明环境ok了。 二、工具下载好了,下面进行获取apk的包名 和 launcherActivity吧。 1. 将准备测试的apk放在D盘某个目录下,如D:\test 2. 打开cmd,输入指令:aapt dump badging D:\test\xxx.apk 3. 如下图,以京东apk为例,package包名就获取到了: 注:老司机可以直接把apk放在桌面上,输入指令后拖到cmd框中。 4.

APP自动化之Hybrid自动化解决方案(七)

不羁的心 提交于 2020-04-24 14:10:06
基于UIAutomator+ChromeDriver模式(UIAutomator安卓原生引擎)   原理:native(原生)部分使用UIAutomator,webview部分使用ChromeDriver,两者结合混搭,从而实现Hybrid自动化 一、第一种方案(针对可以修改源代码基础上操作) 1.准备android 4.4+ 版本以上的手机/模拟器(我安装的是:nox_setup_v6.3.0.5_full.exe) 2.让开发在app源代码中将webview调试模式打开 webview.setWebContensDebuggingEnabled( true ) 3.安装UC开发者工具(定位web页面元素信息工具) 自行百度下载 https://plus.ucweb.com/download/#DevTool 安装: 安装成功后启动: 打开页面如下: 4.模拟器或者真机连接后,打开app内嵌的webview页面或者打开百度网页版如下: 注意:1.APP必须打开webview调试模式 2.模拟器/真机必须打开开发者选项中的USB调试模式(使用adb devices检测到已连接设备) 二、 第二种方案(针对线上app无源码修改权限并且root权限手机操作) 如果是第三方线上app,一般WebView debug开关都是关闭的,这就需要借助第三方的工具,才能将debug开关打开 