У меня возникла проблема с работой с транспортиром вместе с firefox.Протранслятор не дождался загрузки страницы, прежде чем переходить к следующему блоку в firefox
В моем тесте я сначала направил браузер на страницу входа в систему и после ввода пользователя и пароля я делаю еще browser.get
действие, которое ссылается на меня на другую страницу.
Как страница входа, так и вторая страница являются негладкими страницами. Проблема, с которой я сталкиваюсь, заключается в том, что firefox не дожидался загрузки начальной страницы и сразу же пытается выполнить перенаправление.
Я попробовал версии firefox: 27.0.1, 28.0, 42.0, 45.0.1 и 46.0.1 (все 32-разрядные версии), все версии показывают одинаковое поведение. Версия webdriver-manager - 10.0.4, версия selenium webdriver - 2.53, os win8.1 64 бит и версия транспортира 3.1.1.
При выполнении того же теста в браузере Chrome, как и следовало ожидать, он ждет завершения регистрации и только затем переходит к следующему блоку, который выполняет действие browser.get.
Мой файл конф:
var HtmlScreenshotReporter = require('protractor-jasmine2-screenshot-reporter');
var path = require('path');
exports.config = {
framework: 'jasmine2',
seleniumAddress: 'http://localhost:4444/wd/hub',
specs: ['multiTestRun.js'],
getPageTimeout: 60000,
rootElement: '[ng-app]',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 10000000,
isVerbose: true,
includeStackTrace: true
},
params: {
test: 'Regression',
resources: 3,
locations: 4,
skills: 2,
services: 0,
useNameSpace: 0
},
capabilities: {
'browserName': 'firefox'
},
onPrepare: function(){
var dest = path.normalize('./Results');
browser.manage().timeouts().setScriptTimeout(120000);
jasmine.getEnv().addReporter(
new HtmlScreenshotReporter({
dest: dest,
filename: 'my-report.html',
showQuickLinks: true,
reportOnlyFailedSpecs: false,
captureOnlyFailedSpecs: true,
restartBrowserBetweenTests: true
})
);
global.isAngularSite = function(flag){
browser.ignoreSynchronization = !flag;
};
browser.driver.manage().window().maximize();
}
};
Мой код файла:
describe('test', function() {
beforeEach(function(){
isAngularSite(false);
}, 60000);
it('it1', function() {
browser.get('https://example.com/');
element(By.id('username')).clear();
element(By.id('username')).sendKeys('[email protected]');
element(By.id('password')).clear();
element(By.id('password')).sendKeys('1234.org');
element(By.id('Login')).click();
});
it('it2', function() {
browser.get('https://example.com/SecondPage');
browser.get('https://example.com/SecondPage');
browser.executeScript('return RemoteActions;')
.then(function(remoteAction) {
console.log('remoteAction.doAction');
console.log(remoteAction.doAction);
browser.executeAsyncScript(function(remoteAction) {
var callback = arguments[arguments.length - 1];
Visualforce.remoting.Manager.invokeAction(remoteAction.doAction, function (res, ev) {
callback(res);
}, { buffer: false, escape: false, timeout: 10000 });
},remoteAction).then(function(res) {
console.log(res);
});
});
});
любые советы?
Обновленный вопрос с тестом, что cuases вопрос с светлячок – user3475306