问题:无法在docker protractor 中使用无头chrome中的browser.driver.manage()。deleteAllCookies()删除httpOnly:true,secure:true cookie。
可以在我的本地设置中执行相同的操作:Windows> protractor > chrome
安装程序: protractor 5.3.2,chromedriver版本:'2.37.544315,chrome'version'=> '66 .0.3359.117',platform = Linux 3.10.0-862.3.2.el7.x86_64 x86_64)。 Docker镜像:node:9-stretch。
Docker文件选项:
args "-v /tmp:/tmp --privileged --net=host --shm-size=2gb"
Chrome选项:
args: ['no-sandbox','headless','disable-gpu','window-size=1366,768'],
代码示例:
browser.manage().getCookies().then(function (cookies) {
console.dir(cookies);
browser.driver.manage().deleteAllCookies();
browser.sleep(5000).then(function (completed) {
browser.manage().getCookies().then(function (cookies) {
console.dir(cookies);
});
});
});
最佳答案
添加到capabilities
文件中的protractor.conf
中。它将强制在单独的节点js线程中运行每个测试。
capabilities: {
shardTestFiles: true,
maxInstances: 1
}