什么是App自动化?为什么要做App自动化?
App自动化是指给 Android或iOS上的软件应用程序做的自动化测试。
手工测试和自动化测试的对比如下:
手工测试优势:不可替代、发现更多bug、包含了人的想象力与理解力。
注意,不是所有功能都需要自动化。
自动化测试优势:可重复、效率高,增加软件信任度。
App测试自动化的目的如下:
- 执行自动化测试只会发现很少的bug。
- 执行自动化冒烟测试或回归测试是用来验证系统状态,而不是找出更多bug。
- 执行自动化测试可以让测试同事有更多的精力来关注复杂场景,做更多更深层次的测试。
- 编写自动化测试过程中会发现一部分bug,发现后要及时记录。
什么是Appium?
Appium 是一个开源工具,用于自动化 iOS 手机、 Android 手机和 Windows 桌面平台上的原生、移动 Web 和混合应用。「原生应用」指那些用 iOS、 Android 或者 Windows SDKs 编写的应用。「移动 Web 应用」是用移动端浏览器访问的应用( Appium 支持 iOS 上的 Safari 、Chrome 和 Android 上的内置浏览器)。「混合应用」带有一个「webview」的包装器——用来和 Web 内容交互的原生控件。类似于 Apache Cordova 或 Phonegap 项目,创建一个混合应用使得用 Web 技术开发然后打包进原生包装器创建一个混合应用变得容易了。
重要的是,Appium 是跨平台的:它允许你用同样的 API 对多平台(iOS、Android、Windows)写测试。做到在 iOS、Android 和 Windows 测试套件之间复用代码。
为什么是Python?
appium支持多种语言Ruby、Python、Java、JavaScript、Objective C、php、C#、RobotFramework。
我喜欢用Python,就是这样。
iOS App自动化都需要安装什么
硬件
- macOS 电脑 (必须)
- iOS 手机 (必须)
软件、依赖库
- Xcode (必须)
- Appium Desktop (必须)
- python (必须)
- pycharm (非必须)
- node.js (必须)
- cnpm (必须)
- ios-deploy (必须)
- homebrew (必须)
- libimobiledevice (必须)
- carthage (必须)
- WebDriverAgent(非必须)
其他
- Apple ID (必须)
Tips: 以上都是按照真机自动化罗列。
开始吧!
假设你已经有了macOS 电脑和iOS手机。
- Xcode
- 打开App Store搜索Xcode安装
- 直接在Apple开发者官网下载 Xcode 12.4
- Appium Desktop
在appium-desktop github 官网下载,选择 Appium-mac-1.20.2.dmg: - homebrew (必须)
打开终端,执行命令/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装时遇到问题?查看Mac下安装Homebrew的经历 - python (必须)
- 如果你已经安装homebrew,则执行命令
brew install python3,即可安装python,安装路径/usr/local/Cellar - 也可以直接下载python安装文件,双击安装。Python 3.9.2 for macos
- 如果你已经安装homebrew,则执行命令
- pycharm (非必须)
只是python编辑器,看个人习惯,我喜欢用这个。下载地址:pycharm for mac
你可以用其他IDE,VSCode之类的。 - node.js (必须)
直接官网下载安装node.js for Mac - cnpm (必须)
打开终端,执行命令sudo npm install -g cnpm --registry=https://registry.npm.taobao.org
安装cnpm是为了下一步快速安装ios-deploy。 - ios-deploy (必须)
打开终端,执行命令sudo cnpm install -g ios-deploy - libimobiledevice (必须)
打开终端,执行命令brew install --HEAD libimobiledevice - carthage (必须)
打开终端,执行命令brew install carthage - WebDriverAgent(非必须)
直接在WebDriverAgent github 官网下载。Tips: 网上有教程是下载这个WebDriverAgent项目,修改之后,再替换Appium自带的WebDriverAgent。亲测以后发现没必要,还会报错,直接修改Appium自带的WebDriverAgent就可以了,当然要做好备份哦。(修改方法在真机自动化文章中会介绍,模拟器不需要)
安装过程中如果遇到问题,可以留言。
下一篇,Appium+Python进行iOS App自动化测试(2)使用Appium启动在模拟器上的App。
参考博客:
App自动化测试方案
Appium 介绍
Appium 简介
Have fun.