TravisCI dan SauceLabs - file tidak ada di sistem file

Saya memiliki proyek yang memiliki tes Busur Derajat yang dijalankan oleh TravisCI melalui SauceLabs.

Salah satu tes melibatkan "mengunggah" file:

it('should not allow "image/jpeg" file', function () {
  pathToFile = path.resolve(__dirname, 'file.jpg');
  elem.sendKeys(pathToFile);
  expect(elem.getAttribute('class')).toMatch('ng-invalid');
});

Ini berfungsi dengan baik secara lokal, namun Travis menghasilkan kesalahan:

. . . ./file.jpg' tidak ada di sistem file

Saya rasa ini karena file.png tidak ada di SauceLabs.

Pertanyaan saya adalah, bagaimana caranya agar ini berfungsi?

Arahan yang dimaksud adalah ini: https://github.com/GrumpyWizards/ngValidation/blob/master/wizValidation/src/file/file.dir.js


person Greg    schedule 23.04.2014    source sumber
comment
Bisakah Anda memberikan lebih banyak informasi tentang elemen/arahan yang Anda uji?   -  person Michal Charemza    schedule 03.05.2014
comment
Memperbarui pertanyaan...   -  person Greg    schedule 05.05.2014
comment
Sepertinya ada fungsi setFileDetector, dijelaskan di saucelabs.com/resources/selenium-file-upload, secara teori hal ini dapat berfungsi. Namun, dari github.com/angular/protractor/issues/612 dan code.google.com/p/selenium/issues/detail?id=6048 #c3 , sepertinya saat ini, tidak ada pengikatan Node, sehingga tidak dapat diakses dari Busur Derajat sampai ditambahkan (atau Anda menambahkannya: tapi saya tidak yakin apakah Anda dapat menggunakannya buatan khusus Selenium dengan Saus?)   -  person Michal Charemza    schedule 05.05.2014
comment
Masalah yang sama dengan plugin saya di sini: ng-form-data.tomchentw.com   -  person Tom Chen    schedule 07.05.2014
comment
Saya mendapat kesimpulan yang sama untuk komentar Michal di sini.   -  person Tom Chen    schedule 07.05.2014


Jawaban (1)


Ini adalah tes UI, tidak perlu menyelesaikan nama jalur sama sekali...

it('should not allow "image/jpeg" file', function () {
  pathToFile = "path/is/not/important/file.jpg";
  elem.sendKeys(pathToFile);
  expect(elem.getAttribute('class')).toMatch('ng-invalid');
});

Michael

person Michael Dausmann    schedule 20.05.2014
comment
Elemen ini menggunakan API File HTML5 untuk membaca detail file - person Greg; 20.05.2014