移动端的UI自动化测试摸索

Posted eosclover

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了移动端的UI自动化测试摸索相关的知识,希望对你有一定的参考价值。

涉及到的软件:appium、SDK、AVD、夜神模拟器、AIrtest、pycharm

以下是基于window环境

一、首先部署的环境是:appium+SDK+AVD+pycharm

1.java环境:java - version

2.node 环境:node -V

下载地址:https://nodejs.org/en/ 

3.SDK 安装

下载地址:http://tools.android-studio.org/index.php/sdk

4.运行SDK Manager.exe 安装Android版本8.0

参考文章:http://www.testclass.net/appium/appium-base-sdk/
5.运行AVD.Manager.exe 创建Android虚拟机
参考文章:http://www.testclass.net/appium/appium-base-sdk/

6.获取appPackage和appActivity

https://blog.csdn.net/mtbaby/article/details/78676477
主要的两行代码:

desired_caps[‘appPackage‘] = ‘com.android.calculator2‘
desired_caps[‘appActivity‘] = ‘.Calculator‘

7.appium 下载:appium-doctor

下载地址:https://bitbucket.org/appium/appium.app/downloads/

path要配置

%ANDROID_HOME%	ools;%Appium_Home%;
%JAVA_HOME%in;%JAVA_HOME%jrein;C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;C:Program Files (x86)NVIDIA CorporationPhysXCommon;D:ProgramFileTortoiseSVNin;%JMETER_HOME%in;%ANT_HOME%in;D:ProgramFilegitcmd;D:ProgramFilegit;E:WorkSpacemysqlmysql-5.7.23-winx64in;E:WorkSpace
ode;;%ANDROID_HOME%platform-tools;%ANDROID_HOME%	ools;%Appium_Home%;E:WorkSpaceappium
ode_modules.bin;E:WorkSpacePython;E:WorkSpacePythonpip-19.0.3;E:WorkSpacePythonScripts;E:WorkSpaceNoxin

 

 

执行顺序:
1.AVD Manager.exe 点击执行 出现ANdroid 模拟器 保证模拟器能正常运行    --移动端
2.先启动appium 服务端 出现welcome 时,再执行python代码   ---服务端
3.然后在pycharm中执行测试代码 --客户端

 

 

运行成功的代码

运行成功的代码
"计算器  基于ANdroid6.0模拟器 "
#coding=utf-8
from appium import webdriver

desired_caps = {}
desired_caps[platformName] = Android
desired_caps[platformVersion] = 6.0
desired_caps[deviceName] = Android Emulator
desired_caps[appPackage] = com.android.calculator2
desired_caps[appActivity] = .Calculator

driver = webdriver.Remote(http://localhost:4723/wd/hub, desired_caps)

driver.find_element_by_name("1").click()

driver.find_element_by_name("5").click()

driver.find_element_by_name("9").click()

driver.find_element_by_name("delete").click()

driver.find_element_by_name("9").click()

driver.find_element_by_name("5").click()

driver.find_element_by_name("+").click()

driver.find_element_by_name("6").click()

driver.find_element_by_name("=").click()

driver.quit()

"安装高血压大夫.app"
#coding=utf-8
from appium import webdriver
import time

import os
PATH=lambda p:os.path.abspath(os.path.join(os.path.dirname(__file__),p)

)
desired_caps = {}
desired_caps[platformName] = Android
desired_caps[platformVersion] = 6.0
desired_caps[deviceName] = Android Emulator
desired_caps[appPackage] = com.XXXXr
desired_caps[appActivity] = com.XXXXXXX.SplashActivity
desired_caps[app] = PATH(E:\高血压大夫.apk)
driver = webdriver.Remote(http://localhost:4723/wd/hub, desired_caps)
#
driver.install_app(E:高血压大夫.apk)
time.sleep(10)

 

二Airtest+夜神模拟器+pycharm

1.Airtest  官网下载  --不建议下最新版本的

2.夜神模拟器官网下载

3.将模拟器的E:WorkSpaceNoxin 添加到path里边

4.在电脑端开启夜神模拟器,熟悉模拟器的相关操作(如:主页、旋转、等等)

5.夜神模拟器开启USB调试(设置-版本号,连续点击三次以上-再次返回设置界面,显示了开发者选项-进入开发者选项,勾选USB调试)

6.打开AIrtest软件,右侧点击远程连接,输入:adb connect  127.0.0.1:62001,并点击连接

adb connect 127.0.0.1:62001
模拟器 adb连接代码
网易Mumu adb connect 127.0.0.1:7555
夜神 adb connect 127.0.0.1:62001
逍遥 adb connect 127.0.0.1:21503
iTools adb connect 127.0.0.1:54001
天天 adb connect 127.0.0.1:6555
海马玩 adb connect 127.0.0.1:26744
BlueStacks adb connect 127.0.0.1:5555

7.Artesti设备列表显示待连接的设备,在connect的右侧倒三角,选择use  javacap,再次点击connect,显示模拟器正在显示的界面。

8.Airtest:  图像识别  poco:UI 识别的测试框架,用于定位元素,如元素属性 id ,name 等等类似

 

运行成功的代码: 待补充

 

以上是关于移动端的UI自动化测试摸索的主要内容,如果未能解决你的问题,请参考以下文章

移动端自动化测试appium环境搭建

移动端自动化测试appium环境搭建

Python + Selenium实现web端的UI自动化

几款移动端的测试工具

移动UI自动化测试Appium

史上最全-Appium自动化测试框架