Вам понадобится selenium server, либо самостоятельно, либо по адресу browserstack
/SauceLabs
. Если вы планируете сделать это самостоятельно, одним словом, вам нужно будет установить сетку селена и зарегистрировать узлы, один из узлов должен быть машиной Windows, где вы будете запускать тесты против IE.
Лично я успешно выполнял тесты protractor e2e на нескольких браузерах, включая разные версии Chrome
, Firefox
и IE
на браузере. Вот конфигурация я использую (он также включает в себя jasmine junit reporter
, это было нужно для CI):
'use strict';
var browserstackUser = 'user';
var browserstackKey = 'key';
exports.config = {
multiCapabilities: [
{
'browserstack.user': browserstackUser,
'browserstack.key': browserstackKey,
'browserstack.local': 'true',
'browserstack.debug': 'true',
'browserName': 'Chrome',
'os': 'Windows',
'os_version': '8',
'resolution': '1024x768',
specs: [
'*.spec.js'
],
exclude: [
'footer.disabledCookies.spec.js'
]
},
{
'browserstack.user': browserstackUser,
'browserstack.key': browserstackKey,
'browserstack.local': 'true',
'browserstack.debug': 'true',
'browser': 'Internet Explorer',
'browser_version': '8.0',
'os': 'Windows',
'os_version': '7',
'resolution': '1024x768',
specs: [
'*.spec.js'
]
},
{
'browserstack.user': browserstackUser,
'browserstack.key': browserstackKey,
'browserstack.local': 'true',
'browserstack.debug': 'true',
'browserName': 'Internet Explorer',
'browser_version': '9.0',
'os': 'Windows',
'os_version': '7',
'resolution': '1024x768',
specs: [
'*.spec.js'
],
exclude: [
'footer.disabledCookies.spec.js'
]
}
],
// Browserstack's selenium server address
seleniumAddress: 'http://hub.browserstack.com/wd/hub',
framework: 'jasmine',
allScriptsTimeout: 300000,
baseUrl: 'http://localhost:9001',
onPrepare: function() {
require('jasmine-reporters');
var capsPromise = browser.getCapabilities();
capsPromise.then(function (caps) {
var browserName = caps.caps_.browserName.toUpperCase();
var browserVersion = caps.caps_.version;
var prePendStr = browserName + "-" + browserVersion + "-";
jasmine.getEnv().addReporter(new
jasmine.JUnitXmlReporter("test-results", true, true, prePendStr));
});
},
jasmineNodeOpts: {
showColors: true,
isVerbose: true,
includeStackTrace: true,
defaultTimeoutInterval: 3600000
}
};
niceeee, я действительно не думал о browserstack ... У нас уже есть аккаунт здесь на самом деле, но в течение некоторого ручного тестирования целей, он мог бы действительно работать. Я надеюсь, что автоматизировать автоматизацию подписки будет достаточно для 5 версий браузера ... он говорит, что 2 параллельных теста –
@ user2174981 Да, я думаю, что мы используем самый дешевый план там с двумя параллельными тестами, для нас это достаточно, но у нас есть автоматические тесты там только для одного внутреннего проекта, мы будем использовать bs более широко - увидим, будет ли это достаточно. Рад, что это помогло, счастливое тестирование. – alecxe