Python测试专项——Native App自动化测试及Appium框架介绍

一  自动化工具简介

1 Appium : 开源,跨平台的自动化测试工具,用于测试Native(原生)和Hybrid(混合)应用,支持IOS/Android/FirefoxOS 平台。

2  环境 :  在不同平台中,Appium是基于不同框架的,Android平台中是基于Uiautomator框架的

3  理念:

  • 无需重新编译应用(和instrumentation对比,无需源码就可实现测试过程);
  • 不局限与语言和框架;
  • 无需重复造轮子,接口统一
  • 必须开源

4 特点:

跨架构:Native,Hybrid,Webview

跨设备:IOS,Android,FirefoxOS

跨语言:Java , Python, Ruby , PHP,  JavaScript

跨进程:不依赖源码(基于Uiautomator) 

5 架构:

Bootstrap.jar ——为了UiAutomator能控制app ,将其提供的各个Api进行封装 ,   封装好的这个驱动程序就是Bootstrap.jar文件 ,该文件由Uiautomator Controller 推送到安卓手机当中的,本来手机当中没有,运行驱动的同时要启动一个Server

UiAutomator Command server ——该server的启动过程依赖于Bootstrap.jar, 用于接受各种command 

UiAutomator  Controller(Android)——负责将Appium自带的Bootstrap.jar,通过adb命令,推送到手机端,再通过一条指令,将其启动,然后Bootstrap.jar会监听一个端口

UiAutomator Command  client——负责发出各种自动化指令到UiAutomator Command server ,这里的指令来自WebDriver script

二  环境的准备

  • appium
  • test device
  • test app
  • appium-python-client , Selenium(依赖库)

三  元素识别工具

UIAutomatorviewer应用及启动 ,略~

四  脚本设计原则

LOVE原则:L——Locate : 定位元素 ;  O——Operate : 操作元素 ;  V——Verify : 验证结果 ;  E——Exception : 处理异常

五  脚本实现

见实例

 

原文地址:https://www.cnblogs.com/insist8089/p/7050119.html