运行 使用 proactor 和获取会话的端到端测试用例未创建
Running e2e test cases using proactor and getting session not created
我使用量角器编写了端到端测试用例。几天前它工作正常。但是现在 运行 个测试用例。
我得到:
session not created: This version of ChromeDriver only
supports Chrome version 81 (Driver info: chromedriver=81.0.4044.69
我已经安装了 Google Chrome 版本 81。然后我也遇到同样的错误。我尝试重新安装 node_modules 但没有成功。
这是我的 protractor.conf.json 文件的配置:
const { SpecReporter } = require('jasmine-spec-reporter');
const config = require('./protractor.conf').config;
const puppeteer = require('puppeteer');
/**
* @type { import("protractor").Config }
*/
exports.config = {
allScriptsTimeout: 11000,
specs: [
'./src/**/*.e2e-spec.ts'
],
capabilities: {
browserName: 'chrome',
chromeOptions: {
args: [ "--headless", "--no-sandbox" ],
binary: puppeteer.executablePath()
},
},
directConnect: true,
baseUrl: 'http://localhost:4200/',
framework: 'jasmine',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000,
print: function() {}
},
onPrepare() {
require('ts-node').register({
project: require('path').join(__dirname, './tsconfig.json')
});
jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
}
};
因为你指定binary: puppeteer.executablePath()
,这意味着量角器将使用npm包puppeteer
提供的浏览器,而不是你自己安装的浏览器
所以问题是 'puppeteer' 提供的 chrome 浏览器版本不是 81。要使其成为 81 版本或更改 chrome 驱动程序版本以与当前版本兼容'puppeteer' chrome 浏览器。或删除此行binary: puppeteer.executablePath()
以依赖必须手动预装在测试机上的浏览器。
我使用量角器编写了端到端测试用例。几天前它工作正常。但是现在 运行 个测试用例。
我得到:
session not created: This version of ChromeDriver only supports Chrome version 81 (Driver info: chromedriver=81.0.4044.69
我已经安装了 Google Chrome 版本 81。然后我也遇到同样的错误。我尝试重新安装 node_modules 但没有成功。 这是我的 protractor.conf.json 文件的配置:
const { SpecReporter } = require('jasmine-spec-reporter');
const config = require('./protractor.conf').config;
const puppeteer = require('puppeteer');
/**
* @type { import("protractor").Config }
*/
exports.config = {
allScriptsTimeout: 11000,
specs: [
'./src/**/*.e2e-spec.ts'
],
capabilities: {
browserName: 'chrome',
chromeOptions: {
args: [ "--headless", "--no-sandbox" ],
binary: puppeteer.executablePath()
},
},
directConnect: true,
baseUrl: 'http://localhost:4200/',
framework: 'jasmine',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000,
print: function() {}
},
onPrepare() {
require('ts-node').register({
project: require('path').join(__dirname, './tsconfig.json')
});
jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
}
};
因为你指定binary: puppeteer.executablePath()
,这意味着量角器将使用npm包puppeteer
提供的浏览器,而不是你自己安装的浏览器
所以问题是 'puppeteer' 提供的 chrome 浏览器版本不是 81。要使其成为 81 版本或更改 chrome 驱动程序版本以与当前版本兼容'puppeteer' chrome 浏览器。或删除此行binary: puppeteer.executablePath()
以依赖必须手动预装在测试机上的浏览器。