您的位置  > 互联网

UI自动化测试框架的区别

一、简介

iOS自动化测试一直很神秘,很多人都在探索和寻找最强大的自动化测试工具。 从我个人的角度来看,没有最强大的,只有最合适的。 当你以后使用得更加熟练的时候,它的威力就会变得更加强大。 正文之前写了几句废话。 说到功能自动化测试,一般指的是基于UI层面的自动化。 本文介绍的自动化测试框架是UI自动化测试框架,选择了这个开源工具。

1 简介:

它是一个开源、跨平台的自动化测试工具,支持IOS、各平台。 通过此,开发人员可以测试移动应用程序,而无需重新编译应用程序或进行任何调整,并且测试代码可以访问后端API和数据库。 它通过驱动Apple和Apple的框架实现双平台支持,并捆绑在旧平台上进行测试。 开发人员可以使用任何兼容语言编写测试脚本,例如 Ruby、C#、Java、JS、OC、PHP、Perl 和 C#。

iOS自动化工具比较.jpeg

2、原理:

提供各种语言的第三方库,将测试脚本转换为协议下的URL,通过Node服务发送到各个平台上的代理工具。 代理工具在运行过程中不断接收URL,根据协议解析出需要执行的操作,然后调用各个平台上的原生测试框架完成测试,然后将测试结果返回给Node服务器。

iOS平台原理架构.jpeg

在iOS端,也使用该协议。

iOS封装了Apple的框架,主要是利用它(Apple的自动化测试框架),然后注入到设备中,如下图所示:

.js 监控.png

是一个风格测试脚本;

中间的是服务,启动一个服务(4723端口),类似于测试框架,支持标准。 它提供一组Web服务,接收标准请求,解析请求内容,调用相应框架的相应操作;

调用.js启动一个sock,同时分离一个子进程来运行.app,将.js注入到设备中与外界交互;

2、环境建设

Mac OS X系统环境安装步骤:

1.通过命令行安装***

>brew install node              //get node.js
>npm install -g appium          //get appium
>npm install wd                 //get appium client
>appium &                       //start appium

2.通过应用程序安装

最新和历史安装应用程序可以从以下位置下载: 单击听诊器徽标,确认环境是否安装成功。 如果提示看起来不错,再见! 说明环境正常。

安装.png

在此过程中您可能会遇到配置问题:

1、Node.js配置;

2、Java Home的配置;

2.Xcode工具安装等

通过诊断工具诊断出的问题可以自行解决。 遇到问题时看的博客文章是:自动化——基于Java构建iOS环境

三、测试实践 1、真机调试

准备:

① Apple开发者ID以及有效开发者对应的配置文件和签名文件;

② iPad或(在证书中添加UDID);

③ 获取待测试应用程序的源代码;

④ 安装了 Xcode 和 Xcode Line Tools 的 Mac 机器。

设置界面需要配置:

设置界面.png

注意:真机调试时使用的app必须是包含描述文件的app文件,不能选择虚拟机生成的沙漏中的app文件。

1.模拟器调试

准备:

① 获取待测试应用的源代码;

② 安装了 Xcode 和 Xcode Line Tools 的 Mac 机器。

设置界面(模拟器).png

注意:虚拟机需要选择沙箱中的应用程序。 模拟器设置中无需填写UDID。

这件事之后还远远没有结束。 剩下的就是运行APP生成的启动录制压缩包,并根据自动生成的脚本进行编辑、运行和调试。 漫漫长路还要继续学习。

4. 总结

很多人问UI自动化是否应该投资,是否有未来。 这个问题没有绝对的答案。 这取决于项目的类型。 一般来说,对于相对稳定的项目来说,UI自动化的真正价值有两点:

1.是验证逻辑而不是UI;

2、替代大量UI重复操作。

如果这个东西从上到下都得到支持,如果是你想做的事情,如果投资方向正确,如果价值理解正确,肯定会有正的产出。 另外,UI自动化是测试本质上不可避免的能力。 你不需要依赖它,但你需要它。 最后我用网上的几句话来结束这篇文章:

UI 自动化是一项常常不可避免的技能;

UI自动化会给人以幻想,所以你需要看清现实和价值;

喜欢是无拘无束的,爱是有节制的。 而克制是 UI 自动化工作的关键。

桌面版最近更新至1.6.4

至 1.6.4.png

至 1.6.4.png

相关文章:

1. 社区;

2、从入门到原理;

3、简介及工作原理;

4、用例子告诉你如何实现移动端UI的自动化测试;