项目案例:手把手教你做自动化,记一次Appium框架运行实例

新闻 前端 自动化
众所周知,Appium是移动端界面自动化中最常用的开源框架之一,它能够支持 iOS 平台和 Android 平台上app及web应用测试,支持Mac,Windows操作系统,并且支持多种语言。

 众所周知,Appium是移动端界面自动化中最常用的开源框架之一,它能够支持 iOS 平台和 Android 平台上app及web应用测试,支持Mac,Windows操作系统,并且支持多种语言,java、python、php、C#、js等,让你不受编程语言的束缚 。下面我将展示Appium框架应用测试的一个具体实例。

[[345941]]

一、框架环境安装

环境搭建需要具备以下软件,如下表:

项目案例:手把手教你做自动化,记一次Appium框架运行实例

环境配置略微复杂些,涉及到多个软件的安装及参数配置等,可参考网上Appium搭建文文档,环境搭建不属于本篇文章的重点,不再赘述。

二、测试流程操作

1.安装APK

打开模拟器,安装好自己要测试的app包。

项目案例:手把手教你做自动化,记一次Appium框架运行实例

2.打开Appium-desktop,启动服务,提示the server is running,即为启动成功。

项目案例:手把手教你做自动化,记一次Appium框架运行实例
项目案例:手把手教你做自动化,记一次Appium框架运行实例

3.服务参数配置

接下来就要进行服务参数配置了,选择本地服务,详细配置参数如下:

·platformName: 平台的名称(iOS, Android, or FirefoxOS)

·platformVersion:移动设备的系统版本号,7.1, 4.4

·deviceName:设备名称

·appPackage:要启动的包名称

·appActivity:要启动的Activity(应用入口)

以上这些服务参数配置均可通过命令在控制台查看到,首次配置后可以进行下保存,以便下次再次使用方便。

项目案例:手把手教你做自动化,记一次Appium框架运行实例

4.脚本录制操作

点击start session后,就进入到脚本录制和元素定位的页面了,如下图。在这个页面我们可以根据测试需要进行元素的点击,输入文本等操作,形成一个测试脚本(可以指定语言)。

项目案例:手把手教你做自动化,记一次Appium框架运行实例

在模拟器操作后,点击appium-desktop界面的刷新按钮,可以将界面同步到操作屏上点击录制按钮,在操作截屏上点击抓取元素,中间App Source显示界面xml代码,右边是元素的具体信息,Recorder上展示录制代码。左边操作截屏上点击元素不会真正的点击,只是选中的元素,右边会展示元素的定位,点击右边的tap才会真实点击,点击sendkeys表示输入文本。

我在此进行了输入框的点击,输入,点击"搜索"按钮操作,且将操作的脚本都录制了下来,选用的是Java语言。

5.脚本编写

打开IDEA,新建一个maven工程,然后将上一步骤录制的脚本copy到脚本的"sampleTest"部分,复制过来录制的脚本代码有时候可能需要再修改下。上面的setUp类是app的启动参数配置,这部分直接修改下就可以。另外,在pom文件中别忘了引入相关依赖。

项目案例:手把手教你做自动化,记一次Appium框架运行实例
项目案例:手把手教你做自动化,记一次Appium框架运行实例

6.脚本执行

执行脚本,可看到模拟器上会执行刚才录制的操作回放,最后执行通过后,脚本会展示passed,同时模拟器回放完毕。

项目案例:手把手教你做自动化,记一次Appium框架运行实例

三、测试总结

通过Appium自动化测试的实例运行,我们也会对Appium测试框架有个更深刻的了解,其实基础的案例运行并不难,可能难点还是在后续你的案例设计上。我在实际操作中也有了很多弯路,包括环境搭建时个软件版本之间不兼容、脚本执行时初始化界面和运行不一致等等,但最终这些都是可以解决的。希望大家都能够亲自操作下,从框架搭建到脚本执行,一定会有很多的收获。

 

责任编辑:张燕妮 来源: 今日头条
相关推荐

2017-05-18 12:45:35

数据分析数据理解数据

2015-07-29 16:33:12

IOS半透明引导

2020-07-23 14:39:28

系统权限设计

2020-06-01 16:25:43

WindowsLinux命令

2021-04-06 22:48:41

数据集工具Python

2011-05-03 15:59:00

黑盒打印机

2011-01-10 14:41:26

2011-03-28 16:14:38

jQuery

2021-07-14 09:00:00

JavaFX开发应用

2020-10-21 08:05:45

Scrapy

2024-01-26 08:16:48

Exporter开源cprobe

2021-05-27 11:10:42

Python开源包代码

2022-08-04 10:39:23

Jenkins集成CD

2021-10-03 20:26:56

系统模块标签

2022-01-29 21:54:58

电商用户数据

2011-02-22 13:46:27

微软SQL.NET

2021-02-26 11:54:38

MyBatis 插件接口

2021-12-28 08:38:26

Linux 中断唤醒系统Linux 系统

2023-04-26 12:46:43

DockerSpringKubernetes

2022-03-14 14:47:21

HarmonyOS操作系统鸿蒙
点赞
收藏

51CTO技术栈公众号