appium自动化测试--初始化设置

appium原理

appium是一个开源的自动化工具,支持多平台(ios、android原生应用、移动web和混合应用)appium&webdriver其实是一个自动化库(ios 9.3以上的XCUITest和9.3以下的UIAutomation、android 4.3以上的uiautomator和uiautomator2、windows的winappdriver),客户端调用库的内容实现需要自动化操作的内容,发送到服务器端,服务器端解释并发送到设备端。可以使用任意语言编写你的客户端。

1.启动appium。

这里选择手动启动appium,使用默认设置。
appium自动化测试--初始化设置_第1张图片
如果需要同时启动多台设备测试,可以修改“Advanced”项
appium自动化测试--初始化设置_第2张图片
2.desired_caps

desired_caps_a = {'platformName': "Android",  
                  'platFormVersion': "9",
                  'deviceName': "df93a63a",  # adb devices 获取
                  'app': "C:/Users/v_yddchen/Desktop/weixin7010android1580_arm64.apk",
                  'appPackage': "com.tencent.mm",  # (以微信为例)启动应用,adb shell dumpsys window windows|findstr "Current"可以获取当前运行在前台的应用activity
                  'appActivity': "com.tencent.mm.ui.LauncherUI",
                  'unicodeKeyboard': True,  # 未set_key做准备。
                  'resetKeyboard': True}
device_a = webdriver.Remote("http://localhost:4723/wd/hub", desired_caps_a)  # 端口有变动的话,注意更改。这里初始化的数据也可以使用配置文件,后期再完善这里~

3.一些报错

a.oppo reno启动的时候报错:writing to settings requires:android.permission.WRITE_SECURE_SETTINGS

解决办法:在开发者选项里,把“禁止权限监控”关闭掉(据说小米手机把USB调试安全设置打开即可,允许USB调试修改权限或模拟点击)

b.default/noReset/fullRest

default:测试后停止和清除应用数据,不卸载应用。

noreset:不停止应用和清除数据,不卸载应用

fullreset:session启动前,和结束后,停止应用和清除数据,卸载应用。

c.deviceName和udid

deviceName:iPhone Simulator, iPad Simulator, iPhone Retina 4-inch, Android Emulator, Galaxy S4,github上说在android上这个字段是被忽略的,但是实测如果不填写的话,会报错,deviceName is blank。

deviceName=任意值,不填写udid的话,可以启动连接的真机。

如果指定appPackage和appActivity功能(请参阅下文),则Android不需要此功能。 UiAutomator2和XCUITest允许在没有app或appPackage的情况下启动会话。与browserName不兼容

看完点赞 ~养成好习惯,以上内容希望对你有帮助,如果对软件测试、接口测试、自动化测试、面试经验交流感兴趣可以加入我们。642830685,免费领取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!技术大牛解惑答疑,同行一起交流。

你可能感兴趣的:(软件测试,自动化测试,Android,软件测试,android,自动化测试)