window-size 在 docker 内部的量角器中无法在无头 chrome 中工作,但在本地工作
window-size not working in headless chrome in protractor inside docker but works in local
问题: window-size in chrome 选项在无头 chrome 中量角器 运行 inside docker.
设置:
chrome驱动程序版本:量角器 5.3.1 使用的 2.33
Docker文件:
FROM node:9-alpine
RUN echo @edge http://nl.alpinelinux.org/alpine/edge/community >> /etc/apk/repositories \
&& apk add --no-cache \
python \
build-base \
git \
bash \
openjdk8-jre-base \
# chromium dependencies
nss@edge \
chromium-chromedriver@edge \
chromium@edge
Protractor.conf.js :
chromeDriver: '/usr/bin/chromedriver',
directConnect: true,
capabilities: {
'browserName': 'chrome',
'chromeOptions': {
args: ['no-sandbox','headless','window-size=1366,768'],
同样的设置在没有 docker 环境的本地也有效。
错误: Chrome 打开但测试用例失败(不尝试访问应用 url)
UnhandledPromiseRejectionWarning: WebDriverError: no such session
尝试过 1 次:
'window-size=1366,768'
'window-size=1366x768'
'--window-size=1366x768'
'screen-size=1366x768'
尝试了 2 次:
onPrepare: function () {
browser.driver.manage().window().setSize(1280, 1440);
}
这也可以锻炼 chrome 默认 window 尺寸。
尝试了 3 次:
尝试将量角器更新为 protractor@5.3.1(原为 5.1)并使用
'goog:chroomeOptions' : {
args: ['no-sandbox','headless','window-size=1366,768'],
}
谁能指出问题所在。谢谢
尝试使用 chromeoptions
中的 --start-maximized
chrome 选项。我遇到过一次这个问题,添加这个标志解决了这个问题。
这是内存问题。
--shm-size=1gb
已解决。
感谢@sylvaindumont 提供解决方案。
问题: window-size in chrome 选项在无头 chrome 中量角器 运行 inside docker.
设置:
chrome驱动程序版本:量角器 5.3.1 使用的 2.33
Docker文件:
FROM node:9-alpine
RUN echo @edge http://nl.alpinelinux.org/alpine/edge/community >> /etc/apk/repositories \
&& apk add --no-cache \
python \
build-base \
git \
bash \
openjdk8-jre-base \
# chromium dependencies
nss@edge \
chromium-chromedriver@edge \
chromium@edge
Protractor.conf.js :
chromeDriver: '/usr/bin/chromedriver',
directConnect: true,
capabilities: {
'browserName': 'chrome',
'chromeOptions': {
args: ['no-sandbox','headless','window-size=1366,768'],
同样的设置在没有 docker 环境的本地也有效。
错误: Chrome 打开但测试用例失败(不尝试访问应用 url)
UnhandledPromiseRejectionWarning: WebDriverError: no such session
尝试过 1 次:
'window-size=1366,768'
'window-size=1366x768'
'--window-size=1366x768'
'screen-size=1366x768'
尝试了 2 次:
onPrepare: function () {
browser.driver.manage().window().setSize(1280, 1440);
}
这也可以锻炼 chrome 默认 window 尺寸。
尝试了 3 次:
尝试将量角器更新为 protractor@5.3.1(原为 5.1)并使用
'goog:chroomeOptions' : {
args: ['no-sandbox','headless','window-size=1366,768'],
}
谁能指出问题所在。谢谢
尝试使用 chromeoptions
中的 --start-maximized
chrome 选项。我遇到过一次这个问题,添加这个标志解决了这个问题。
这是内存问题。
--shm-size=1gb
已解决。
感谢@sylvaindumont 提供解决方案。