2015-05-14 8 views
5

Ich teste ein AngularJS-Projekt mit Winkelmesser. Ich habe eine Bilddatei hochgeladen Tests, die auf meinem lokalen Mac-Maschine funktioniert und korrekt übergeben. Wenn ich jedoch den gleichen Test über Saucen ausführen, schlägt der Test fehl.Winkelmesser Datei hochladen mit SauceLabs

Socelabs hat Probleme, die Datei zu finden und öffnet nur ein Dialogfeld, kann aber die Datei nicht finden. Die Datei befindet sich in meiner Testlösung und nicht in Soßen. Ich habe mich im Internet nach Antworten umgesehen, aber ich habe keine definitive Antwort gefunden, um dieses spezielle Problem zu lösen. Im Folgenden finden Sie ein Beispiel für den Code, den ich zum Hochladen einer Bilddatei für eine Anwendung verwende.

var path = require('path'); 

it('should upload a file', function() { 
    var fileToUpload = '../some/path/foo.txt', 
    absolutePath = path.resolve(__dirname, fileToUpload); 

    $('input[type="file"]').sendKeys(absolutePath);  
    $('#uploadButton').click(); 
}); 

Jede Hilfe oder Vorschläge, wie der obige Code bekommen über Saucelabs arbeiten wird sehr geschätzt.

Antwort

1

Haben Sie versucht, so etwas wie:

browser.driver.setFileDetector(new browser.driver.remote.FileDetector); 

Nach the protractor issue es ist entweder das, oder es funktioniert nicht (Bug in Selenium JavaScript-Bindungen oder Transporteur oder Versionskonflikt).

Im selben GitHub-Problem gibt es auch a workaround, wenn die Hauptlösung nicht funktioniert (TLD: Dateifreigabe).