前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >appium教程_3.启动appium-server

appium教程_3.启动appium-server

作者头像
千往
发布2020-10-10 15:49:58
1.3K0
发布2020-10-10 15:49:58
举报

appium教程_3.启动appium-server

前言

一台电脑控制多台设备(ios+Android),每个设备的通信都是独立的appium-server,之前的想法是每个case会去启动/check appium-server是否启动,如果启动了就执行业务测试,没有启动的话就启动appium-server,经过一段时间的执行,最后还是通过supervisor把appium-server跟业务代码解耦开了

命令行

前面有提到过,执行appium就start了appium server,但实战的时候肯定没这么简单,需要加上一些参数,直接appium -h 就可以看到可以加上哪些参数,实际运行的参数如下:

代码语言:javascript
复制
--session-override 允许 session 覆盖(如有冲突)	
-a 指定监听的 ip 地址,默认都是127.0.0.1
-p 指定监听的端口
--bootstrap-port (仅 Android)设备跟 Appium 通信的端口 这个其实没用了
--webdriveragent-port 指定ios设备的wda端口
-U 指定哪台设备,udid
--local-timezone 时间戳使用本地时区
--log-timestamp 在终端输出中显示时间戳	
--command-timeout 600  已经弃用了,Desired capabilities

官方参数文档: http://appium.io/docs/cn/writing-running-appium/server-args/#_1 (中文 ?) http://appium.io/docs/en/writing-running-appium/server-args/index.html 实际例子如下:

代码语言:javascript
复制
appium --session-override -a 127.0.0.1 -p 4725  -bp 4726 --udid {your_udid} --command-timeout 600 --webdriveragent-port 8600

问题

实际上有时候排查问题需要查看appium-server的日志,appium的命令行有一个参数可以输出日志到指定日志文件

代码语言:javascript
复制
-g, --log		Also send log output to this file	--log /path/to/appium.log

但有个问题,如果appium server端异常,日志就会GG,case如下:

代码语言:javascript
复制
窗口A
执行 appium -g /path/test.log

窗口B
同样执行 appium -g /path/test.log

因为appium端口被占用导致窗口B的异常了,结果就影响了整个日志了

貌似这个问题在1.18.2版本已经修复了

supervisor

Supervisor is a client/server system that allows its users to monitor and control a number of processes on UNIX-like operating systems.

通俗来说,可以用通过supervisor来执行命令行,有重试机制,有自己的日志输出,使得服务更稳定,异常挂掉的话,会自启动,也有简单的web图形界面用来操作命令 http://supervisord.org/installing.html

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • appium教程_3.启动appium-server
  • 前言
  • 命令行
  • 问题
  • supervisor
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档