
karatelabs/karate-chromeKarate-Chrome是一个集成了Google Chrome浏览器、Xvfb虚拟显示服务、VNC远程控制服务器及视频录制工具的Docker镜像。该镜像专为Karate测试框架设计,提供开箱即用的浏览器自动化测试环境,支持无头模式运行或通过VNC可视化监控测试过程,同时具备测试会话视频录制能力,便于测试结果分析与问题复现。
karate.webDriver()等API调用,实现端到端Web测试。通过以下命令启动容器,默认暴露VNC端口(5900)以便远程连接:
bashdocker run -d -p 5900:5900 karatelabs/karate-chrome
localhost:5900(若容器运行在本地)或 <服务器IP>:5900(远程服务器)。VNC_PASSWORD环境变量自定义访问密码,默认密码为karate:
bashdocker run -d -p 5900:5900 -e VNC_PASSWORD=mysecretpass karatelabs/karate-chrome
/karate/videos,通过卷挂载将录制文件保存至本地目录:
bashdocker run -d -p 5900:5900 -v $(pwd)/local-videos:/karate/videos karatelabs/karate-chrome
1280x720x24)或帧率:
bashdocker run -d -p 5900:5900 -e SCREEN_RESOLUTION=1920x1080x24 karatelabs/karate-chrome
在Karate测试脚本中,通过配置WebDriver连接容器内的Chrome浏览器。示例karate-config.js配置:
javascriptfunction fn() { var config = { webDriver: { type: 'chrome', start: false, remoteUrl: 'http://localhost:9515' // 假设ChromeDriver暴露9515端口(需确认容器端口映射) } }; return config; }
注:具体端口映射需根据容器内ChromeDriver配置调整,建议参考官方文档确认端口暴露方式。
| 环境变量名 | 描述 | 默认值 |
|---|---|---|
VNC_PASSWORD | VNC服务器访问密码 | karate |
SCREEN_RESOLUTION | 虚拟屏幕分辨率(宽x高x色深) | 1280x720x24 |
VIDEO_PATH | 视频录制文件保存路径 | /karate/videos |
VIDEO_FRAME_RATE | 视频录制帧率(fps) | 15 |
--user参数指定非root用户运行容器,增强安全性。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务