У меня есть проект с тестами Protractor, которые выполняются TravisCI через SauceLabs.
Один из тестов включает «загрузку» файла:
it('should not allow "image/jpeg" file', function () {
pathToFile = path.resolve(__dirname, 'file.jpg');
elem.sendKeys(pathToFile);
expect(elem.getAttribute('class')).toMatch('ng-invalid');
});
Это отлично работает локально, однако Travis выдает ошибку:
<сильный>. . . ./file.jpg" не существует в файловой системе
Я думаю, это потому, что file.png
не существует в SauceLabs.
Мой вопрос в том, как я могу заставить это работать?
Речь идет об этой директиве: https://github.com/GrumpyWizards/ngValidation/blob/master/wizValidation/src/file/file.dir.js
setFileDetector
, описанная на saucelabs.com/resources/selenium-file-upload, что теоретически может заставить это работать. Однако из github.com/angular/protractor/issues/612 и code.google.com/p/selenium/issues/detail?id=6048 #c3 похоже, что на данный момент нет привязки к узлу, и поэтому он не будет доступен из Protractor, пока он не будет добавлен (или вы не добавите его: но я не уверен, что вы можете использовать пользовательская сборка Selenium с соусом?) - person Michal Charemza   schedule 05.05.2014