我正在使用Selenoid实时浏览器屏幕functionality调试测试。建议捕获浏览器屏幕视频的方法是什么?
最佳答案
UPD2:在Selenoid 1.4.0中发布。
UPD1:目前在Selenoid中有关本机视频录制功能的working。从版本1.4.0开始应该可用。
Selenoid支持通过VNC显示视频。您需要做的就是从相应端口抓取它。这是从VNC录制视频的一种可能方法。
要求:
Selenoid必须以二进制文件(而不是Docker容器)的形式运行,否则映射的端口为null
。
Docker API应该暴露给外界。 (http://www.virtuallyghetto.com/2014/07/quick-tip-how-to-enable-docker-remote-api.html)
怎么做。一种可能的解决方案是使用vnc2flv脚本。
下载脚本:$ wget https://pypi.python.org/packages/1e/8e/40c71faa24e19dab555eeb25d6c07efbc503e98b0344f0b4c3131f59947f/vnc2flv-20100207.tar.gz\#md5\=8492e46496e187b49fe5569b5639804e
解压缩档案:$ tar zxf vnc2flv-20100207.tar.gz
安装脚本:$ python setup.py install --prefix=/usr/local
录制视频:通过Selenoid /status
获取Docker容器ID,然后使用Docker命令查找哪个端口映射到容器端口5900
(VNC端口)。然后输入:flvrec.py -P <filename_for_password_file> -o <output_video_filename> <hub_host> <the_vnc_port>
,例如flvrec.py -P password.txt -o /tmp/selenoid_videos/gimme_love.flv 172.31.11.135 32774
。
保存的视频文件可在/tmp/selenoid_videos/gimme_love.flv
中找到。