app和web比较
-
app和web都属于UI测试,同等重要
-
技术栈不同
- web:html.css.js
- 安卓:java,kotlin
- ios: object-c,swift
- 新的开发模式:web技术做安卓,ios的开发。reactnative,weex
- 新的开发模式:谷歌官方:dart语言()
-
appium解决的问题
- selenium只能操作web,不能操作手机
- 手机端使用不同的语言开发的,需要学各种语言
-
appium特点与学习方式
- 学习时selenium比appium更重要,web比app更重要。
- appium是基于selenium的,是继承关系。
- 可以做到跨平台,既可以做安卓,也可以做iOS测试
- 支持多种语言,java,python,php,ruby,js…
- appium测试时不是很稳定
- 发展时间不是很久
- app自动化涉及到的组件和通讯非常多
- 常用端口:4444,4723
appium环境搭建(特别重要)
-
环境要素
- 手机/模拟器
- appium server
- appium client
- java
- android sdk
-
手机模拟器区别
- 手机和电脑架构不一样,电脑x86,手机ARM
- 真机需要打开开发者调试模式(弹框授权)
- 模拟器:雷电、夜深、逍遥、genymotion
-
appium server
- appium desktop 桌面程序
- 下载地址:https://github.com/appium/appium-desktop/releases/tag/v1.15.1
- 先安装1.13,最新1.18
- 给自己安装,不要选择所有用户会出问题
- 没有可选路径
- appium 命令行工具
- 用js管理的,需要安装node.js框架
- 下载长期支持版,最新版容易出问题
- 安装后命令行输入node,npm
- npm相当于python中的pip是下载管理工具
- npm install -g appium
- 装好后输入appium
- 解决端口占用:appium -p 4444
- appium desktop 桌面程序
-
appium client
- pip install appium-python-client
-
java 环境
- 安装Java1.8以上64位
- 下载地址:https://mirrors.huaweicloud.com/java/jdk/
- 安装完输入java -version查看
- 配置环境变量
- 系统变量中添加JAVA_HOME指定路径为Java安装目录
- path变量中添加%JAVA_HOME%\bin
- 安装Java1.8以上64位
-
android sdk环境
- Android Studio,太大了、耗内存,测试不用下载
- 安卓开发新手集成包adt-bundle;
- 下载地址:http://tools.android-studio.org/index.php/adt-bundle-plugin
- 平台版本是向后兼容的
- 配置环境变量
- 系统变量中添加ANDROID_HOME指定路径为adt_bundle安装目录
- path变量添加%ANDROID_HOME%\platform-tools
- 注意:
- 逍遥模拟器需要用系统adb替换自带的adb
- 夜神模拟器需要替换nox_adb,自带的adb备份