Appium学习笔记(1)appium配置-起步

移动端自动化测试-WTF Appium?     http://www.imdsx.cn/index.php/2017/09/23/wtfappium/

移动端自动化测试-Windows-Android-Appium环境搭建    http://www.imdsx.cn/index.php/2017/09/14/winappiumandroid/

移动端自动化测试-Mac-IOS-Appium环境搭建   http://www.imdsx.cn/index.php/2017/11/13/mac-appium/  

下载模拟器:推荐夜游神和genymotion模拟器

测试app事前准备:

  1.手机唯一id,通过命令adb devices来找,需要提前连接真机或者模拟机

  2.手机版本号 4.1.1   查看手机设置中的-关于-版本号

  3.测试的设备类型     Android   iOS

   4.app相关信息----包名和入口

  5.命令行输入appium 启动appium server 或者通过appium desktop客户端启动appium server

  6.通过步骤5启动服务,获取appium server的地址和端口

  7.编写代码

 

冷启动与热启动概念:

  冷启动:后台程序无app进程时,点击app图标启动app

  热启动:从后台程序中打开进入app

 

获取app相关信息方法:

1.通过观察冷启动app时的手机日志
adb logcat | grep START ---mac
adb logcat | findstr START ---win

2.获取包名和入口命令:
aapt dump badging +安装包绝对路径,可以直接通过把包拖上去(路径不能包含中文名,不然会报错)
命令会打印一些日志
package 包名 如:package: name='com.tencent.mobileqq'
launchable-activity 安装应用的入口
如:launchable-activity: name='com.tencent.mobileqq.activity.SplashActivity' label='QQ' icon=''


注意:写代码前一定要先启动appium server服务

编写代码:

 1 from appium import webdriver
 2 '''
 3     "platformName":"Android",  #操作系统
 4     "platformVersion":"4.4.2", #被测手机的系统版本
 5     "deviceName":"127.0.0.1:62001",  # 通过adb devices 进行获取
 6     # 获取包名和入口
 7     # 1.找开发要
 8     # 2.查日志  保证冷启动时  
 9     # 执行命令  adb logcat | grep "START"  ---mac的   adb logcat | findstr START   ----win的
10     # 或者通过命令  aapt dumps  badging + 拖拽过来的包产生的绝对路径(路径不能有中文)   
11     "appPackage":"com.android.settings",
12     "appPackage":"com.tencent.mobileqq",
13     "appActivity":"com.tencent.mobileqq.activity.SplashActivity",
14     "noReset":True  #可以记住登录状态
15 '''
16 desired_capabilities = {
17     "deviceName":"192.168.221.102:5555",  #手机唯一ID
18     "platformVersion":"4.4.10", #手机版本
19     "platformName":"Android", # 设备类型
20     "appPackage":"com.tencent.mobileqq", #包名 'com.tencent.mobileqq'
21     "appActivity":"com.tencent.mobileqq.activity.SplashActivity" #入口 tv.danmaku.bili.ui.splash.SplashActivity
22 }
23 
24 driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_capabilities)  #参数为appium地址和端口,可使用命令appium 查看


  

 

    

原文地址:https://www.cnblogs.com/bugoobird/p/13450254.html