软件测试 / 测试开发 | Appium 环境安装与架构介绍
获取更多相关知识
随着互联网的迅速发展,为了满足用户的需求,产品迭代速度也越来越快,持续集成(CI)和持续交付(CD)都旨在缩短开发周期、提高软件交付效率以及实现全流程的自动化测试。
对于测试人员来说,使用自动化的手段去完成一些重复性高的回归测试工作、或者性能测试工作,用更多的精力去探索发现更复杂的业务逻辑的问题显得尤为重要。
对于客户端产品 UI 界面的功能测试,Appium 是一个非常好的选择,它支持 Android、iOS 系统的原生应用,网页应用以及混合应用,同时也支持多语言,比如 Java、Python、Ruby、JS 等。可以使用 Appium 完成回归测试,冒烟测试等测试阶段的工作。
Appium 架构
Appium 设计哲学
不需要为了自动化而重新编译或修改被测应用
不应该让移动端自动化测试限定在某种语言或者某个具体的框架
不要为了移动端的自动化测试而重新造轮子
移动端自动化测试应该是开源的
Appium 架构
Appium 架构图如下:
Appium 的核心是一个 Web 服务器,提供了一套 REST 的接口,接收到客户端的连接,监听到命令,在移动设备上执行这些命令,将执行结果放在 HTTP 响应中返还给客户端。
事实上,这种客户端/服务端的架构给予了许多的可能性。可以使用任何实现了该客户端的语言来写测试代码,可以把服务端放在不同的机器上,可以只写测试代码,然后使用服务来执行命令。
对于 Android、iOS 底层使用了不同的工作引擎驱动实现自动化测试。Appium 引擎列表:
Appium 支持的语言
Appium 支持如下语言编写测试用例:
Appium 环境安装
Appium Windows 版本只支持 Android 系统,Appium Mac 版同时支持 Android 系统 和 iOS 系统。这里只介绍 MacOS 系统的安装。
Appium 环境依赖
软件列表:
Java 1.8
Android SDK
Appium Desktop
其中 Java 推荐使用 1.8 版本。Android SDK 是 Android 系统的开发工具包,里面有很多自动化测试常用的工具。Appium Desktop 提供了服务与录制功能。
下面开始进行环境安装,以下环境变量的配置,需要打开 MacOS 系统中的 terminal 终端来完成,环境变量可以配置在 ~/.bash_profile
下。如果您使用的是 oh-my-zsh
,则需要配置环境变量到 ~/.zshrc
下。
详细安装参见测试人论坛:
https://ceshiren.com/t/topic/4004
Appium 客户端安装(Python 版本)
如果想要在代码中能够相关包,需要安装第三方库:
Appium 客户端安装(Java 版本)
当使用 Maven 或 Gradle 等构建工具时,会自动加载依赖项。
版权声明: 本文为 InfoQ 作者【测试人】的原创文章。
原文链接:【http://xie.infoq.cn/article/66bc0cb4038a1238fda99958d】。文章转载请联系作者。
评论