2016-04-03 5 views
1

Ich versuche, eine Upload-Datei mit Winkelmesser zu simulieren ich weiß, dass die Winkelmesser nicht mit OS Fenster in Wechselwirkung treten kann, und ich erstellt eine EXE-Datei (mit AutoIT), das den Fokus nimmt und Fügen Sie eine Datei ein. Wenn ich manuell testen alles funktioniert ok. , wenn ich versuche, es zu schreiben in Winkelmesser i erhalten FehlerProtractor Lauf exe mit child_process

dies ist mein Winkelmesser Code (mit child_process) - siehe Bild

Code

Hier ist mein Fehler Massage

error

versucht mit: KEIN GLÜCK !! upload metod2

+0

Sind Sie sicher, dass Sie brauche AutoIT, um eine Datei überhaupt hochzuladen? Es gibt einen einfacheren Weg - senden Sie den Pfad direkt an Ihre Dateieingabe. – alecxe

+0

@alecxe wie mache ich das? und wie sehe ich, dass die Datei wirklich hochgeladen wurde? –

+1

Sicher, siehe http://stackoverflow.com/questions/21305298/how-to-upload-file-in-angularjs-e2e-protractor-testing. – alecxe

Antwort

0

Sie brauchen AutoIT nicht, um Dateien hochzuladen. Senden Sie den vollständigen absoluten Pfad an die Datei, die Sie hochladen möchten, in die Upload-Eingabe. Wenn Sie Tests mit Selenium Grid laufen müssen Sie auch FileDetector verwenden Datei senden an den Knoten in dem Test ausgeführt wird:

var FileDetector = require('selenium-webdriver/remote/index.js').FileDetector; 
browser.setFileDetector(new FileDetector()); 

var path = require('path'); 

var fileToUpload = '../yourfile.txt', 
absolutePath = path.resolve(__dirname, fileToUpload); 
$('hiddenfileuploadinput').sendKeys(absolutePath) 

Hier ist Frage, die Antworten hat, die helfen könnten: How to upload file in angularjs e2e protractor testing