【移动端App自动化测试】02 Appium用例录制

一、创建一个新的session

1、开始新的session
2、指定平台和设备名称
(1)点击Start Session,提示必填信息:平台和设备
(2)设备名称,通过adb devices命令获取
(3)输入平台和设备名称
3、Android 需要获取 appPackage 和 appActivity
(1)命令行输入命令:
adb logcat|grep -i displayed
(2)在 mumu 模拟器上打开被测软件,例如雪球 App ,再回到命令行中查看新生成的日志即可获取
appPackage:com.xueqiu.android
appActivity:.view.WelcomeActivityAlias
4、 desire_caps
1 {
2     "platformName": "iOS",       // android 或iOS
3     "platformVersion": "11.0",   // 版本
4     "deviceName": "iPhone 7",    // 设备名称
5     "automationName": "XCUITest", // 工作引擎
6     "app": "/path/to/my.app"      // Android有包和页面的概念
7 }
二、appium页面功能简介
 
 
左:页面展示
中:dom,xml的层级结构,包含布局和标签
右:元素属性
 
1、选择属性
2、鼠标滑动
3、同步:通过鼠标完成刷新操作,即会同步到手机或模拟器上上
4、返回
5、刷新:对当前页面进行刷新
6、录制脚本
7、搜索:搜索元素,且选中搜索结果会在页面上高亮
8、拷贝:xml的结构
9、关闭
 
三、录制功能
1、点击 录制 按钮

2、录制第一个脚本:选中操作要素,进行相应点击/文本输入/清空操作,切换语言,复制到 Pycharm 中

(1)点击 搜索 按钮
(2)输入 阿里巴巴
(3)点击 联想结果的第一个
(4)点击 用户

 3、Pycharm 中执行录制的脚本

 1 # appium第一个录制脚本
 2 # "noReset": True 保留之前的操作
 3 desired_caps = {
 4   "platformName": "android",
 5   "deviceName": "127.0.0.1:7555",
 6   "appPackage": "com.xueqiu.android",
 7   "appActivity": ".view.WelcomeActivityAlias",
 8   "noReset": True
 9 }
10 # 本机地址0.0.0.0:4723,Appium启动时出现的地址,/wd/hub固定写法
11 driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
12 
13 # 隐式等待
14 driver.implicitly_wait(10)
15 
16 # 点击搜索
17 el1 = driver.find_element_by_id("com.xueqiu.android:id/tv_search")
18 el1.click()
19 
20 # 输入 阿里巴巴
21 el2 = driver.find_element_by_id("com.xueqiu.android:id/search_input_text")
22 el2.send_keys("阿里巴巴")
23 
24 # 点击 第一个联想结果
25 el3 = driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.RelativeLayout/android.widget.FrameLayout/android.widget.LinearLayout/androidx.recyclerview.widget.RecyclerView/android.widget.RelativeLayout[1]/android.widget.LinearLayout/android.widget.TextView[1]")
26 el3.click()
27 
28 # 点击 用户 页签
29 el4 = driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.view.ViewGroup/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.RelativeLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.LinearLayout[2]/android.view.View")
30 el4.click()
appium第一个录制脚本
原文地址:https://www.cnblogs.com/guoccf/p/14469627.html