appium+python自动化60-appium命令行参数
Appium服务器参数
许多Appium 1.5服务器参数已被弃用,以支持—default-capabilities标志。
用法: node . [flags]
help
1.cmd端口输入,appium -help参考帮助信息

>appium -help usage: C:\Users\dell\AppData\Roaming\npm\node_modules\appium\build\lib\main.js [-h] [-v] [--shell] [--reboot] [--ipa IPA] [-a ADDRESS] [-p PORT] [-ca CALLBACKADDRESS] [-cp CALLBACKPORT] [-bp BOOTSTRAPPORT] [-r BACKENDRETRIES] [--session-override] [-l] [-g LOG] [--log-level {info,info:debug,info:info,info:warn,info:error,warn,warn:debug,warn:info,warn:warn,warn:error,error,error:debug,error:info,error:warn,error:error,debug,debug:debug,debug:info,debug:warn,debug:error}] [--log-timestamp] [--local-timezone] [--log-no-colors] [-G WEBHOOK] [--safari] [--default-device] [--force-iphone] [--force-ipad] [--tracetemplate AUTOMATIONTRACETEMPLATEPATH] [--instruments INSTRUMENTSPATH] [--nodeconfig NODECONFIG] [-ra ROBOTADDRESS] [-rp ROBOTPORT] [--selendroid-port SELENDROIDPORT] [--chromedriver-port CHROMEDRIVERPORT] [--chromedriver-executable CHROMEDRIVEREXECUTABLE] [--show-config] [--no-perms-check] [--strict-caps] [--isolate-sim-device] [--tmp TMPDIR] [--trace-dir TRACEDIR] [--debug-log-spacing] [--suppress-adb-kill-server] [--async-trace] [--webkit-debug-proxy-port WEBKITDEBUGPROXYPORT] [--webdriveragent-port WDALOCALPORT] [-dc DEFAULTCAPABILITIES] [--command-timeout DEFAULTCOMMANDTIMEOUT] [-k] [--platform-name PLATFORMNAME] [--platform-version PLATFORMVERSION] [--automation-name AUTOMATIONNAME] [--device-name DEVICENAME] [--browser-name BROWSERNAME] [--app APP] [-lt LAUNCHTIMEOUT] [--language LANGUAGE] [--locale LOCALE] [-U UDID] [--orientation ORIENTATION] [--no-reset] [--full-reset] [--app-pkg APPPACKAGE] [--app-activity APPACTIVITY] [--app-wait-package APPWAITPACKAGE] [--app-wait-activity APPWAITACTIVITY] [--device-ready-timeout DEVICEREADYTIMEOUT] [--android-coverage ANDROIDCOVERAGE] [--avd AVD] [--avd-args AVDARGS] [--use-keystore] [--keystore-path KEYSTOREPATH] [--keystore-password KEYSTOREPASSWORD] [--key-alias KEYALIAS] [--key-password KEYPASSWORD] [--intent-action INTENTACTION] [--intent-category INTENTCATEGORY] [--intent-flags INTENTFLAGS] [--intent-args OPTIONALINTENTARGUMENTS] [--dont-stop-app-on-reset] [--calendar-format CALENDARFORMAT] [--native-instruments-lib] [--keep-keychains] [--localizable-strings-dir LOCALIZABLESTRINGSDIR] [--show-ios-log] [--enable-heapdump] [--relaxed-security]
命令行参数
所有标志都是可选的,但有些标志需要与其他标志一起使用
| 参数 | 默认 | 描述 | 举个例子 |
|---|---|---|---|
| —shell | 空值 | 进入REPL模式 | |
| —ipa | 空值 | (仅限IOS)abs路径到编译的.ipa文件 | —ipa /abs/path/to/my.ipa |
| -a, —address | 0.0.0.0 | 要监听的IP地址 | —address 0.0.0.0 |
| -p, —port | 4723 | 端口 | —port 4723 |
| -ca, —callback-address | 空值 | 回拨IP地址(默认:与 - 地址相同) | —callback-address 127.0.0.1 |
| -cp, —callback-port | 空值 | 回调端口(默认:与端口相同) | —callback-port 4723 |
| -bp, —bootstrap-port | 4724 | (仅限Android)端口用于设备与Appium交谈 | —bootstrap-port 4724 |
| -r, —backend-retries | 3 | (仅适用于iOS)在声明崩溃或超时之前重试启动仪器的次数 | —backend-retries 3 |
| —session-override | 假 | 启用会话覆盖(clobbering) | |
| -l, —pre-launch | 假 | 在允许第一个会话之前预先启动应用程序(需要—app和Android,—app-pkg和—app-activity) | |
| -g, —log | 空值 | 也发送日志输出到这个文件 | —log /path/to/appium.log |
| —log-level | 调试 | 日志级别; 默认(console [:file]):debug [:debug] | —log-level debug |
| —log-timestamp | 假 | 在控制台输出中显示时间戳 | |
| —local-timezone | 假 | 使用本地时区作为时间戳 | |
| —log-no-colors | 假 | 不要在控制台输出中使用颜色 | |
| -G, —webhook | 空值 | 还将日志输出发送到此HTTP侦听器 | —webhook localhost:9876 |
| —safari | 假 | (仅限IOS)使用Safari浏览器应用程序 | |
| —default-device, -dd | 假 | (仅限IOS模拟器)使用仪器自行启动的默认模拟器 | |
| —force-iphone | 假 | (仅限IOS)无论应用需要什么,都可以使用iPhone模拟器 | |
| —force-ipad | 假 | (仅限IOS)无论应用需要什么,都可以使用iPad Simulator | |
| —tracetemplate | 空值 | (仅限IOS).tracetemplate文件以与Instruments一起使用 | —tracetemplate /Users/me/Automation.tracetemplate |
| —instruments | 空值 | (仅IOS)路径为仪器二进制 | —instruments /path/to/instruments |
| —nodeconfig | 空值 | 配置JSON文件以使用硒网格注册appium | —nodeconfig /abs/path/to/nodeconfig.json |
| -ra, —robot-address | 0.0.0.0 | 机器人的IP地址 | —robot-address 0.0.0.0 |
| -rp, —robot-port | -1 | 机器人端口 | —robot-port 4242 |
| —selendroid-port | 8080 | 本地端口用于与Selendroid进行通信 | —selendroid-port 8080 |
| —chromedriver-port | 9515 | ChromeDriver将运行的端口 | —chromedriver-port 9515 |
| —chromedriver-executable | 空值 | ChromeDriver可执行完整路径 | |
| —show-config | 假 | 显示有关appium服务器配置和退出的信息 | |
| —no-perms-check | 假 | 绕过Appium的检查来确保我们可以读取/写入必要的文件 | |
| —strict-caps | 假 | 如果希望发送大写字符,会导致会话失败,Appium不会将其识别为对所选设备有效 | |
| —isolate-sim-device | 假 | Xcode 6在某些平台上存在一个错误,在这些平台上,如果所有其他模拟器设备首次被删除,某个模拟器只能无误地启动。此选项会导致Appium删除Appium正在使用的设备以外的所有设备。请注意,这是一个永久删除,您负责使用simctl或xcode来管理Appium使用的设备的类别。 | |
| —tmp | 空值 | 目录的绝对路径Appium可以用来管理临时文件,例如它需要移动的内置iOS应用程序。在* nix / Mac上默认为/ tmp,在Windows上默认为C:\ Windows \ Temp | |
| —trace-dir | 空值 | 目录的绝对路径Appium用于保存ios乐器轨迹,默认为/ appium乐器 | |
| —debug-log-spacing | 假 | 在日志中添加夸大间距以帮助进行目视检查 | |
| —suppress-adb-kill-server | 假 | (仅限Android)如果设置,则阻止Appium杀死adb服务器实例 | |
| —async-trace | 假 | 将长堆栈跟踪添加到日志条目。建议仅用于调试。 | |
| —webkit-debug-proxy-port | 27753 | (仅限IOS)用于与ios-webkit-debug-proxy进行通信的本地端口 | —webkit-debug-proxy-port 27753 |
| -dc, —default-capabilities | {} | 设置默认的所需功能,这些功能将在每个会话上设置,除非被接收的功能覆盖。 | `—default-capabilities ['{“app”:“myapp.app”,“deviceName”:“iPhone Simulator”}’ |
| —reboot | 假 - | (仅限Android)在每次会话后重新启动模拟器,并在最后终止 | |
| —command-timeout | 60 | [DEPRECATED]没有效果。这曾经是服务器用于所有会话的默认命令超时(以秒为单位,应小于2147483)。改用newCommandTimeout上限 | |
| -k, —keep-artifacts | 假 | [DEPRECATED] - 无效,trace现在默认在tmp目录中,并在每次运行前清除。请参考—trace-dir标志。 | |
| —platform-name | 空值 | [DEPRECATED] - 移动平台的名称:iOS,Android或FirefoxOS | —platform-name iOS |
| —platform-version | 空值 | [DEPRECATED] - 移动平台的版本 | —platform-version 7.1 |
| —automation-name | 空值 | [DEPRECATED] - 自动化工具的名称:Appium或Selendroid | —automation-name Appium |
| —device-name | 空值 | [DEPRECATED] - 要使用的移动设备的名称 | —device-name iPhone Retina (4-inch), Android Emulator |
| —browser-name | 空值 | [DEPRECATED] - 移动浏览器的名称:Safari或Chrome | —browser-name Safari |
| —app | 空值 | [DEPRECATED] - IOS:abs模拟器编译的.app文件的路径或设备上所需目标的bundle_id; Android:abs路径到.apk文件 | —app /abs/path/to/my.app |
| -lt, —launch-timeout | 90000 | [DEPRECATED] - (仅限iOS)ms等待仪器启动多长时间 | |
| —language | 空值 | [DEPRECATED] - iOS模拟器/ Android模拟器的语言 | —language en |
| —locale | 空值 | [DEPRECATED] - iOS模拟器/ Android模拟器的语言环境 —locale en_US | |
| -U, —udid | 空值 | [DEPRECATED] - 连接的物理设备的唯一设备标识符 | —udid 1adsf-sdfas-asdf-123sdf |
| —orientation | 空值 | [DEPRECATED] - (仅限IOS)使用LANDSCAPE或PORTRAIT初始化所有对此方向的请求 | —orientation LANDSCAPE |
| —no-reset 假 | [DEPRECATED] - 不要在会话之间重置应用程序状态(IOS:不要删除应用程序plist文件; Android:不要在新会话之前卸载应用程序) | ||
| —full-reset | 假 | [DEPRECATED] - (iOS)删除整个模拟器文件夹。(Android)通过卸载应用程序而不是清除应用程序数据来重置应用程序状态。在Android上,这也会在会话完成后删除应用程序。 | |
| —app-pkg | 空值 | [DEPRECATED] - (仅限Android)要运行的Android应用程序的Java包(例如,com.example.android.myApp) | —app-pkg com.example.android.myApp |
| —app-activity | 空值 | [DEPRECATED] - (仅限Android)要从包中启动的Android活动的活动名称(例如,MainActivity) | —app-activity MainActivity |
| —app-wait-package | 假 | [DEPRECATED] - (仅限Android)您想要等待的Android活动的软件包名称(例如,com.example.android.myApp) | —app-wait-package com.example.android.myApp |
| —app-wait-activity | 假 | [DEPRECATED] - (仅限Android)您想要等待的Android活动的活动名称(例如,SplashActivity) | —app-wait-activity SplashActivity |
| —device-ready-timeout | 五 | [DEPRECATED] - (仅限Android)在等待设备准备就绪的几秒钟内超时 —device-ready-timeout 5 | |
| —android-coverage | 假 | [DEPRECATED] - (仅限Android)完全合格的仪器类。通过-w在adb shell中的工具-e覆盖率true -w | —android-coverage com.my.Pkg/com.my.Pkg.instrumentation.MyInstrumentation |
| —avd | 空值 | [DEPRECATED] - (仅限Android)要启动的avd的名称 | —avd @default |
| —avd-args | 空值 | [DEPRECATED] - (仅限Android)启动avd的其他仿真器参数 | —avd-args -no-snapshot-load |
| —use-keystore | 假 [DEPRECATED] - (仅限Android)设置密钥库时将用于签名。 | ||
| —keystore-path | <用户> /。机器人/ debug.keystore [DEPRECATED] - (仅限Android)密钥库路径 | ||
| —keystore-password | 安卓 | [DEPRECATED] - (仅限Android)密码到密钥库 | |
| —key-alias | androiddebugkey | [DEPRECATED] - (仅限Android)密钥别名 | |
| —key-password | 安卓 [DEPRECATED] - (仅限Android)密钥密码 | ||
| —intent-action | android.intent.action.MAIN | [DEPRECATED] - (仅限Android)意图操作,将用于启动活动 | —intent-action android.intent.action.MAIN |
| —intent-category | android.intent.category.LAUNCHER | [DEPRECATED] - (仅限Android)意图类别,将用于启动活动 | —intent-category android.intent.category.APP_CONTACTS |
| —intent-flags | 0x10200000 | [DEPRECATED] - (仅限Android)将用于启动活动的标志 | —intent-flags 0x10200000 |
| —intent-args | 空值 | [DEPRECATED] - (仅限Android)将用于启动活动的其他意向参数 | —intent-args 0x10200000 |
| —dont-stop-app-on-reset | 假 | [DEPRECATED] - (仅限Android)包含时,禁止在重新启动前停止应用程序 | |
| —calendar-format | 空值 | [DEPRECATED] - iOS模拟器的(仅iOS)日历格式 | —calendar-format gregorian |
| —native-instruments-lib | 假 | [DEPRECATED] - (仅限IOS)IOS有一个奇怪的内置不可避免的延迟。我们用appium修补它。如果你不想补丁,通过这个标志。 | |
| —keep-keychains | 假 | [DEPRECATED] - (仅限iOS)在会话之间重置应用程序时是否保留钥匙串(库/钥匙串) | |
| —localizable-strings-dir en.lproj [DEPRECATED] - (仅限IOS)Localizable.strings文件所在的目录的相对路径 | —localizable-strings-dir en.lproj | ||
| —show-ios-log | 假 | [DEPRECATED] - (仅限IOS)如果设置,iOS系统日志将被写入控制台 | |
| —enable-heapdump | 假 | 启用NodeJS内存转储收集功能。此功能对查找内存泄漏非常有用。使用’kill -SIGUSR2'命令为具有特定PID的节点进程创建内存堆转储(仅适用于 nix系统)。转储文件将创建在执行主要Appium脚本的相同文件夹中,并且将具有 .heapsnapshot扩展名。这些快照可以随后加载到Chrome Inspector以供进一步调查。阅读Rising Stack文章以获取更多细节。 | |
| —relaxed-security | 假 | 禁用额外的安全检查,因此可以使用一些由支持该选项的驱动程序提供的高级功能。只有在所有客户端都位于可信网络中的情况下才能启用它,并且如果客户端可能会脱离会话沙箱,则不是这种情况。 |
举例
-a : 默认服务地址 127.0.0.1
-p: 端口号 4730 (默认4723)
-U: udid ,android的udid就是adb devices查看到的前面那一串
—no-reset 不重置app 与desired_caps配置里面的 {“noReset”: True,} 一个意思

cmd端口输入
appium -a 127.0.0.1 -p 4730 -U emulator-5554 —no-reset

