Appium Appium 中的一个新功能——ScreenshotsBroadcaster

adfghzhang · 2018年09月21日 · 最后由 yusunan-github 回复于 2019年03月16日 · 1795 次阅读

今天浏览Appium中发现了一个新的用户变量——MJPEG_SERVER_PORT。这个端口具体的官方解释如下:
mjpegServerPort The port number on which WDA broadcasts screenshots stream encoded into MJPEG format from the device under test. It might be necessary to change this value if the default port is busy because of other tests running in parallel. Default value: 9100 e.g. 12000
再查阅Appium的发布日志,在1.9.0版本发布的介绍中查阅到其中一项更新正是 mjpegServerPort - port to which screenshots can be streamed.

我们可以使用这个广播服务在浏览器或其他场景中以数据流形式展示屏幕截图。
这个时候你是否想到了另外一个优秀的开源工具ios-minicap,是的这个工具是由STF团队提供iOS端的视频流显示方案。很多同学根据此做了一些二次开发来实现iOS设备的共享。比如iOS_Remote
ios-minicap能够非常流畅的显示手机端的图像,甚至你看视频可能也不会觉得由多卡。但ios-minicap具有一定的局限性,比如只支持真机,并且同时只能支持一台设备。如果由多个iOS设备像要共享,那就需要多个mac端一对一的连接。
Appium中的ScreenshotsBroadcaster经过测试真机和模拟器都是支持的,并且显示效果与ios-minicap相差也不大。
放一段录制的视频看看效果。是不是可以比较完美的解决ios-minicap不能支持多设备的问题了呢?

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 18 条回复 时间 点赞

来个gif看看效果

codeskyblue 回复

文章有gif呀

/**

  • Record the display of devices running iOS Simulator since Xcode 8.3 or real devices since iOS 8
  • (ios-minicap utility is required: https://github.com/openstf/ios-minicap).
  • It records screen activity to a MPEG-4 file. Audio is not recorded with the video file.
  • If screen recording has been already started then the command will stop it forcefully and start a new one.
  • The previously recorded video file will be deleted.

https://github.com/appium/appium-xcuitest-driver/blob/00a04a7a7cc1cccfa38e93a5fb0f51fa85f1991d/lib/commands/recordscreen.js

用的就是 minicap

66666666666
中秋还刻苦学习,点赞

恒温 回复

推荐一个mac视频转gif的工具吧,尝试了几个最终上传了一个不支持连播的GIF😂

adfghzhang 回复

LICEcap

恒温 回复

android这边还没带上支持吧,我看他们写了这个特性,但是android上没见有实现。如果他们能完成这个对后面的图片查找算法和遍历算法都会有不错的性能提升。

这玩意用来搞兼容性测试怎么样,能实现一台手机操作多台手机回放吗

chenhuipeng1 回复

😂 好像只是屏幕截图传递?

chenhuipeng1 回复

mjpeg的视频流

adfghzhang 回复

有能实现一台手机操作,多台手机重复此手机操作的技术吗,相当于实时广播录制回放的技术吗,最近在研究这个

chenhuipeng1 回复

Appium提供的这个功能是不能实现你这个需求的。需要你自己二次开发了

过来回顾了一下,感觉这个功能比较鸡肋吧。。。。

watchdog 回复

为什么呢?当你自动化有录制需求的时候,当你需要做iOS设备共享平台的时候这个是一大利器

这个功能有没有实例啊 我在google 和百度上并没有找到相关的介绍

adfghzhang iOS 远程真机方案整理 中提及了此贴 03月11日 09:16

appium的mjpeg-server貌似也存在屏幕旋转不对的问题

codeskyblue iOS 远程真机方案整理 中提及了此贴 03月11日 18:05
仅楼主可见
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册