Java的Appium自动化测试教程
2021/7/12 14:06:55
本文主要是介绍Java的Appium自动化测试教程,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
环境配置需求:
1、jdk 这里使用的是jdk1.8
2、Android SDK
3、Appium 使用的是 Appium-desktop 这是款桌面集成的Appium 操作方便简单
4、开发工具 Eclipse
5、nodejs: https://nodejs.org/en/
6、夜神安卓模拟器
7、测试教程使用的微信 apk下载地址:http://gdown.baidu.com/data/wisegame/66fa6a9b0c42e77d/3f7e66fa6a9b0c42e77dda78f05e9812.apk
8、代码示例测试驾考宝典下载地址:https://www.wandoujia.com/apps/280597
点击普通下载,下载apk
环境变量配置自行百度这里就不在说了
安装完成后运行安装appium-doctor命令检测appium环境
npm install -g appium-doctor
bundletool.jar下载地址:https://github.com/google/bundletool/releases
在android sdk安装目录下面创建bundle-tool目录把bundletool.jar放入 文件名字必须改为bundletool
在系统环境变量和用户环境变量分别添加上目录
FFmpeg下载地址:https://github.com/FFmpeg/FFmpeg
gstreamer下载地址:https://gstreamer.freedesktop.org/download/
opencv4nodejs和mjpeg-consumer使用npm安装
npm install -g opencv4nodejs npm install -g mjpeg-consumer
再次运行appium-doctor检测环境全部打钩就没问题了
以上环境安装完成后在你的\Android\Sdk\platform-tools目录下找到adb.exe
在夜神安卓模拟器目录Nox\bin下找到nox_adb.exe
把\Android\Sdk\platform-tools目录下找到的adb.exe改名为nox_adb.exe并且复制到Nox\bin下
打开模拟器设置为手机版
探测包名使用cmd进入\Android\Sdk\build-tools\29.0.2>目录下 我这里是29.0.2版本可能会不一样
输入aapt dump badging D:\baidu\wechat.apk 注意apk的地址不能有中文否则会报错
执行后获取包名为com.tencent.mm
找到应用启动入口的Activity
打开Appium 输入本地地址127.0.0.1 默认端口4723 把截图里面的内容勾选
点击Start Server启动Appium
点击放大镜进入配置页面
cmd 输入 adb cconnect 127.0.0.1:62001 夜神安卓模拟器运行端口为62001
在Appium里面配置选项填写配置
deviceName 为模拟器连接URL
platform 为测试的应用平台
appPackage为应用包名
appActivity为应用启动入口
{ "deviceName": "127.0.0.1:62001", "platform": "Android", "appPackage": "com.tencent.mm", "appActivity": "com.tencent.mm.ui.LauncherUI" }
点击 save保存配置方便下次使用不需要重新填写
Saved Capability Sets 可以看到刚才保存的配置
点击进入刚才的配置页
点击Start Session启动
错误原因为模拟器没有安装微信
直接鼠标拖拽apk到模拟器进行安装
每次开启模拟器必须要开启USB调试
设置>关于>连续点击版本号5次开启开发者模式
在设置里面找到开发者选项
找到USB调试打开
完成后点击Start Session
使用appium上面的Select Elements去选取按钮,获取按钮节点id
示例代码:
maven依赖包
<dependency> <groupId>io.appium</groupId> <artifactId>java-client</artifactId> <version>7.3.0</version> </dependency>
package com.centent.appium; import java.net.MalformedURLException; import java.net.URL; import org.openqa.selenium.WebElement; import org.openqa.selenium.remote.DesiredCapabilities; import io.appium.java_client.android.AndroidDriver; /** * @author ௸྄ིོུ倾心คิดถ * @version 创建时间:2021年7月11日 下午5:49:04 * @ClassName 类名称 * @Description 类描述 */ public class AppiumTest { public static AndroidDriver<WebElement> androidDriver; public static void main(String[] args) throws MalformedURLException { // 创建配置对象 DesiredCapabilities desiredCapabilities = new DesiredCapabilities(); // 添加配置 // deviceName 可以找到我们测试的设备 desiredCapabilities.setCapability("deviceName", "127.0.0.1:62001"); // platformName: 测试平台 Android or Ios desiredCapabilities.setCapability("platformName", "Android"); desiredCapabilities.setCapability("appPackage", "com.handsgo.jiakao.android"); // appActivity 测试App启动入口 desiredCapabilities.setCapability("appActivity", "com.handsgo.jiakao.android.splash.Login"); // 传入两个参数 //第一个参数: Appium通讯地址 //第二个参数:配置对象 androidDriver=new AndroidDriver<WebElement>(new URL("http://127.0.0.1:4723/wd/hub"),desiredCapabilities); } public static void testJiaKao() { // 找到定位城市文本,并且点击 androidDriver.findElementById("com.handsgo.jiakao.android:id/cityTv").click(); } }
持续更新中。。。。
这篇关于Java的Appium自动化测试教程的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16ShardingSphere 如何完美驾驭分布式事务与 XA 协议?
- 2024-11-16ShardingSphere如何轻松驾驭Seata柔性分布式事务?
- 2024-11-16Maven资料入门指南
- 2024-11-16Maven资料入门教程
- 2024-11-16MyBatis Plus资料:新手入门教程与实践指南
- 2024-11-16MyBatis-Plus资料入门教程:快速上手指南
- 2024-11-16Mybatis资料入门教程:新手必看指南
- 2024-11-16MyBatis资料详解:新手入门与初级实战指南
- 2024-11-16MyBatisPlus资料:初学者入门指南与实用教程
- 2024-11-16MybatisPlus资料详解:初学者入门指南