名称 | 值 | 说明 |
deviceName | -- | 手机的名字,一般设置当前手机品牌名称 |
platformVersion | -- | 手机操作系统版本 |
platformName | `iOS`, `Android`, 或 `FirefoxOS` | 测试的手机操作系统 |
appPackage | eg:`com.example.android.myApp` | 运行的Android应用的包名 |
appActivity | 通常需要在前面添加 `.` | 应用包中启动的 Android Activity 名称 |
app | `/abs/path/to/my.apk`或`http://myapp.com/app.ipa`| | 文件所在的本地绝对路径或者远程路径 如果指定了app(apk安装目录),则不用指定appPackage和appActivity。每次都会去重新安装一遍 |
automationName | `Appium` (默认) 或 `Selendroid' | 使用的自动化测试引擎 |
newCommandTimeout | `60` | 设置命令超时时间,单位:秒 |
autoLaunch | true、false | Appium是否需要自动安装和启动应用 |
udid | adb devices 设备号 | 连接的物理设备的唯一设备标识 |
orientation | LANDSCAPE` (横向) 或 `PORTRAIT` (纵向) | 在一个设定的方向模式中开始测试 |
noReset | 默认值`false` |`true`, `false`| | 不要在会话前重置应用状态 |
fullReset | (iOS) 删除整个模拟器目录 |
安卓特有的配置
名称 | 值 | 说明 |
appWaitActivity | |`SplashActivity`| | 等待启动的 Android Activity 名称 |
deviceReadyTimeout | `5` | 等待一个模拟器或真机准备就绪的超时时间 |
androidCoverage | `adb shell am instrument -e coverage true -w` 的 `-w` 参数 | 用于执行测试的 instrumentation 类 |
useKeystore | 默认值 `false`|`true` or `false`| | 使用一个自定义的 keystore 来对 apk 进行重签名 |
keystorePath | 默认: ~/.android/debug.keystore| 如 `/path/to.keystore`| | 自定义 keystore 的路径 |
intentAction | 默认值 `android.intent.action.MAIN` | 用于启动 activity 的 intent action |
optionalIntentArguments | `--esn `, `--ez ` | 用于启动 activity 的额外 intent 参数 请查看 [Intent 参数](http://developer.android.com/tools/help/adb.html#IntentSpec) |
stopAppOnReset | 默认值 `true`| `true` 或 `false`| | 在使用 adb 启动应用前停止被测应用的进程 ( process ) 。如果被测应用是被另一个应用创建的,当这个参数被设定为 false 时,允许另一个应用的进程在使用 adb 启动被测应用时继续存活 |
unicodeKeyboard | 默认值 `false`| `true` 或 `false`| | 使用 Unicode 输入法 |
resetKeyboard | 默认值 `false`| `true` 或 `false`| | 在设定了 `unicodeKeyboard` 关键字的 Unicode 测试结束后,重置输入法到原有状态 |
noSign | 默认值 `false` | `true` 或 `false`| | 跳过检查和对应用进行 debug 签名的步骤 |
ignoreUnimportantViews | 默认值 `false` | `true` 或 `false` | 调用 uiautomator 的函数 `setCompressedLayoutHierarchy()`。由于 Accessibility 命令在忽略部分元素的情况下执行速度会加快,这个关键字能加快测试执行的速度。被忽略的元素将不能够被找到,因此这个关键字同时也被实现成可以随时改变的 *设置 ( settings ) * |