51Testing软件测试论坛
标题:
使用Robotframework+Appium实现的一个移动端用例
[打印本页]
作者:
lsekfe
时间:
2021-8-16 10:59
标题:
使用Robotframework+Appium实现的一个移动端用例
环境准备:
真机或者模拟器 - 逍遥模拟器或者夜神模拟器
如果是真机,直接usb连接到电脑,不同的手机要做一些usb连接设置,而且要打开开发者模式。
逍遥模拟器设置:
和手机操作类似,下拉找到【设置】-【关于平板电脑】,连续点击5次,即打开开发者模式;点击【开发者模式】,打开【USB调试】-【确定】
确保网络和本机电脑在同一个网络下使用adb connect ip:port连接模拟器【adb安装看下面】,在逍遥模拟器上查找模拟器的ip方式如下:
[attach]133793[/attach]
[attach]133794[/attach]
然后执行下面命令
C:\Users\Administrator>adb connect 192.168.1.88
connected to 192.168.1.88:5555
C:\Users\Administrator>adb devices
List of devices attached
192.168.1.88:5555 device
复制代码
JDK和SDK安装
[attach]133795[/attach]
Appium安装
下载appium-desktop
https://github.com/appium/appium-desktop/releases/tag/v1.15.1
python安装库:pip install Appium-Python-Client
测试用例详细过程
1,打开模拟器,通过adb连接上模拟器。
2,获取appPackage和appActivity值,这两个值在后面都有用,具体如何获取可以参考。
https://www.cnblogs.com/fnng/p/7350900.html
使用adb logcat > D:/log.txt之后,打开app,做一些操作,然后打开log文件,搜索Displayed,找到下面一行
ActivityManager: Displayed com.power.xxducation/.MainActivity2: +358ms
appPackage = com.power.xxducation
appAcitivity = .MainActivity2
复制代码
3,桌面打开appium desktop
因为在本机执行,不需要修改ip和port,直接运行server。
[attach]133796[/attach]
出现以下提示表示启动server成功,监听在本机的4723端口。
[attach]133797[/attach]
4, 打开ride,执行python ride.py即可打开,创建一个项目,项目得设置Directory和ROBOT。
[attach]133798[/attach]
5,右击项目,创建测试套件,设置File和TXT
[attach]133799[/attach]
6,右击测试套件,创建测试用例
[attach]133800[/attach]
7,可以在测试套件的设置中导入AppiumLibrary库
[attach]133801[/attach]
如果出现红色,表示库不存在,可以执行下 python -m pip install robotframework-appiumlibrary
[attach]133802[/attach]
[attach]133803[/attach]
8,尝试用例第一步骤,在模拟器上打开app,使用Open Application关键字,当输入的关键字是蓝色,表示正确,后面的红色表示必填参数,灰色可不填,也可以加注释,以#开头。
[attach]133804[/attach]
在按F8执行的时候,提示:
command: robot --argumentfile C:\Users\ADMINI~1\AppData\Local\Temp\RIDE687a1v9_.d\argfile.txt --listener "D:\Program Files (x86)\Python36\lib\site-packages\robotide\contrib\testrunner\TestRunnerAgent.py:4186:False" "D:\Program Files (x86)\Python36\Scripts\APPTest1"
[ ERROR ] Suite 'APPTest1' contains no tests matching name 'APPTest1.登录.有效手机号和密码' in suite 'APPTest1.登录'.
复制代码
创建suite的时候format默认是txt,在以前基于python2.x安装的RF可以使用txt格式。
基于python3安装的RF需要在创建suite的时候format选择为robot,即可正常运行。
因为运行模式由以前的pybot更改为了robot,所以需要更改为.robot格式。
可以在【Tools】-【Preferences】把默认的文件格式修改为robot,这样以后新建suite就模式都是robot格式的了。
9,元素查找和定位,设计用例步骤
在安装完sdk之后,在目录.../sdk/tools下可以找到工具uiautomatorviewer.bat,打开它之后,然后点击上面的第二个图标,就可以把模拟器的当前画面显示出来(不能实时,每次变更画面要重新点击一次)。
可以通过resource-id, id, class, xpath等多种方式定位元素
10,开始实现登录测试用例
Tips: 当你不记得关键字,可以按【F5】查找; 当你想补全关键字,可以在输入一部分之后,按住【Ctrl+Alt+空格】查看所有匹配的关键字。
[attach]133805[/attach]
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2