Appium自动化测试

Posted 捷后愚生

tags:

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

APP测试背景

面临的问题

❖ 按⽉发布->按周发布->按⼩时发布

❖ 多端发布: android ios 微信⼩程序 h5

❖ 多环境发布: 联调环境 测试环境 预发布环境 线上环境

❖ 多机型发布: 众多设备型号 众多系统版本

❖ 多版本共存: ⽤户群体中存在多个不同的版本

❖ 历史回归测试任务: 成百上千条业务⽤例如何回归

总结: 背锅+加班

如何应对

测试体系梳理

  • 业务测试

  • 专项测试

  • 回归测试

测试分层

UI分层测试

APP测试工具体系

什么样的项目不适合做UI⾃动化

❖ 公司节奏慢:⼈⼯测试就可以满⾜公司需求

❖ 初创团队:业务未定型,重构频繁,⽆回归测试压⼒

❖ 业务⽆积累:⼤量⼩功能频繁上线

❖ 测试体系完备:单测、集成测试⾮常完备,完美⾦字塔

自动化测试框架的选择

一、认识Appium

设计理念


二、自动化环境搭建

安装JDK

推荐安装jdk1.8版本,不然使用uiautomatorviewer定位元素时可能会有问题。

安装Android Studio

1.使用Android Studio的模拟器。
当然,还可以使用其他模拟器,如网易木木、夜神模拟器。
2.使用uiautomatorviewer定位。

安装Appium Desktop

安装Nodejs

安装Appium server

三、adb相关命令

  • 安装apk
    adb install -r apk路径
    adb install -r /C/Users/huang/Downloads/com.xueqiu.android_12.4.6_254.apk

  • 启动app
    adb shell am start -W -n com.xueqiu.android/.view.WelcomeActivityAlias -S

  • 获取app入口
    adb logcat |grep -i displayed
    打开app,出现的第一个就是app入口。

    雪球app入口:com.xueqiu.android/.view.WelcomeActivityAlias

  • 显示模拟器
    adb devices


四、Appium Desktop录制


五、用例编写

1.导⼊依赖
2.设置capabilities
3.初始化driver
4.元素定位与操作find+action
5.断⾔ assert

六、元素定位

xpath定位

单属性定位
逻辑运算符定位
空间关系定位,如先找到共同的父节点,再找同一父节点的其他节点

id定位

UIAutomator selector定位

比xpath定位要快,但是只能时android使用,一般很少使用,其表达式非常复杂。

定位参考文章
https://blog.csdn.net/kouleiwa/article/details/87855278?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf

https://blog.csdn.net/hyqlwl/article/details/80355548

七、常用API


八、Toast控件


九、Webview

Webview是什么

怎么判断时Webview元素

怎么定位Webview元素


十、PO


十一、数据驱动


十二、排查错误

Appium log分析

分析界面数据

脚本外调试

curl命令


十三、python装饰器


十四、微信小程序测试

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

有关于appium自动化测试的问题

如何用appium测试ios包

测试新人如何使用Python代码封装自动化测试的用例?

移动测试之appium+python 入门代码

我们在哪里为无法免费获得源代码的应用程序(如 Whatsapp 或 Skype)编写 Appium 自动化测试?

APP自动化测试-Appium日志分析