appium自动化测试(一)
本篇开始,介绍android自动化测试
一、Appium简介
目前大部分公司都有自己的客户端产品,为了缩短开发周期、提高软件交付效率以及实现全流程的自动化持续集成(CI)和持续交付(CD)在行业得到充分应用。对测试人员来说,使用自动化手段去完成一些重复性高的回归测试、或者性能测试工作,将更多的精力去探索发现更复杂的业务逻辑上的问题显得尤为重要。对与客户端产品UI界面的功能性测试,Appium是一个很好的选择,它支持android、iOS以及Firefox系统原生应用,网页应用以及混合应用,同时支持多语言,比如Java、python、ruby、js等。测试工程师可以使用appium辅助完成回归测试,冒烟测试等测试阶段的工作。
二、Appium架构
appium设计美学
1、不需要为了自动化而重新编译或者修改测试应用
2、不应该让移动端自动化测试限定在某种语言或者某个具体的框架
T3、不要为了移动端的自动化而重新造轮子
4、移动端自动化测试应该是开源的
appium架构
android&iOSappium核心是一个web服务器, 它提供了一套REST的接口。它接受客户端的连接,监听到命令,接着在移动端上执行这些命令,然后将执行结果放在http响应中返回给移动端。事实上这种C/S架构给予了更多的可能性。比如我们可以使用任何实现了客户端的语言来编写测试代码;可以把服务端放在不同的机器上;只写测试代码,在云服务器上解释命令。
Appium设计思想的优势
多语言支持
可以把server放到任何机器上
appium工作引擎是第三方库:
iOS:
The XCUITest Driver
(DEPRECATED) The UIAutomatomation Driver
Android:
(BETA)The Espresso Driver
The UIAutomator2 Driver
(DEPRECATED)The UIAutomator Driver
(DEPRECATED)The Selendroid Driver
Windows: for windows desktop app
Mac: for Mac desktop app
Appium环境安装
tips:Appium Windows 版本只支持Android系统,Appium Mac 版本同时支持android和iOS系统
Windows环境搭建
1、Java >1.8版本并配置环境变量
2、Android SDK 并配置环境变量 android 系统开发工具包
3、Appium Desktop 图形化工具包含appium server
4、Appium Client appium客户端不同语言有各自的client
5、android 驱动 手机连接电脑