app ui自动化测试


一、环境搭建
appium+IDEA+maven+junit5+allure+jenkins
1.UI自动化测试框架:appium
环境搭建:Node.js+jdk1.8+andorid sdk+appium
Appium环境搭建超详细教程:https://zhuanlan.zhihu.com/p/49193525
2.脚本编译工具:IDEA
直接在官网下载社区版:https://www.jetbrains.com/idea/download/#section=windows
3.项目管理工具:maven
maven的安装和配置:https://www.cnblogs.com/duduwy/p/12448076.html
4.单元测试框架:junit5
junit5注解详解:https://tonydeng.github.io/2017/10/10/junit-5-annotations/
5.编程语言:java
java教程:https://www.liaoxuefeng.com/wiki/1252599548343744/1259542531392800
6.脚本中的断言:hamcrest
hamcrest教程:http://hamcrest.org/JavaHamcrest/tutorial
7.生成测试报告:allure
allure安装和使用方法:https://www.jianshu.com/p/b5a6e902c9d4
8.自动化测试项目集成:tomcat+jenkins
二、创建第一个自动化测试项目
打开IDEA,菜单栏File-New-Project

填写工程名称和存放路径

完成创建之后需要修改以下地方:
点击菜单栏File-Settings

以上就完成了maven工程的创建
三、编写第一个测试用例
app ui自动化测试用例的编写采用PO模式:将page页面封装在src/main/java目录下,测试用例放在src/test/java目录下,如图所示:

封装的页面包名和测试用例包名最好是一一对应的,如图所示:

编写一个app登录的测试用例:
testcase部分
在方法名前增加@Test注解即为一个测试用例 @BeforAll注解是在所有用例执行前执行此方法中的操作 @AfterAll为执行完所有用例后执行此方法中的操作
(junit5注解)


页面封装:
首先需要封装一个页面配置appium启动参数:
Appium的参数配置介绍:https://blog.csdn.net/chenmozhe22/article/details/80527209

页面的封装:因为所有的页面执行点击、滑动或其它操作都需要通过driver执行,所以需要从启动页传递driver到下一个页面

然后就是定位元素,执行点击、输入操作
元素定位方法:https://www.jianshu.com/p/8c06f8e64d72

点击、文本输入方法封装:

以上就是一个简单的例子介绍app ui自动化测试用例编写过程
四、如何将自动化测试项目集成到本地jenkins
在下一篇博客中介绍:https://i.cnblogs.com/posts/edit

appium怎么获取当前页面的所有元素 :findElementsByXPath("//*")
apium如何获取appPackage和appActivity
https://www.cnblogs.com/iloverain/p/9614262.html
方法1:通过cmd命令,前提是先打开手机中你要获取包名的APP

  1. adb shell(存在多个模拟器时,使用adb -s 模拟器名称 shell)
  2. dumpsys activity | grep mFocusedActivity

方法2:
cmd窗口输入:adb shell pm list packages | findstr anjou (查看anjou相关的包)
adb shell dumpsys package com.anjounail.app (查看anjounail包的所有信息)
可看到美甲涂涂app国外版本的包名和Activity : com.anjoua1.app/com.vava.quickdevelop.UI.Start.WelcomeActivity

方法3:
cmd窗口输入:adb logcat
打开app
在日志中可找到: Window{312be8a u0 com.anjoua1.app/com.vava.quickdevelop.UI.Start.WelcomeActivity}

方法4:
精确查找package的activity的方法
adb shell am force-stop com.tencent.mm
adb logcat :S ActivityManager: | finfstr com.tencent.mm


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM