0

Ich schreibe Testfälle mit Robot Framework und Selen für meine Web-Anwendung. Ich habe versucht, eine Datei hochzuladen, aber ich kann nicht fehlschlagen.Laden Sie eine Datei im Browser mit Robot Framework Test

mein Code

*** Variables *** 
${TVAURL}  http://localhost:1500/ 
${Browser} Firefox 

TC_01: Enter into the application 
    [Documentation] Enter into the application to upload a file 
    Open Browser ${TVAURL}  ${Browser} 
    maximize browser window 
    Choose File ........ 

HTML Datei:

<!DOCTYPE html> 
<html> 
<head> 
<title>Upload File</title> 
</head> 
<body> 

<form action="upload.php" method="post" enctype="multipart/form-data"> 
    Select image to upload: 
    <input type="file" name="fileToUpload" id="fileToUpload"> 
    <input type="submit" value="Upload Image" name="submit"> 
</form> 

</body> 
</html> 

ich wissen muss, wie man diesen Test Choose File für diese Datei-Upload verwenden. Ich weiß nicht, wie ich das machen soll. Ich brauche eine Datei automatisch ohne Tools von Drittanbietern wie Autoit hochladen, etc.

I bezeichnet die folgende http://robotframework.org/Selenium2Library/Selenium2Library.html#Choose%20File

Außerdem bezeichnet habe ich folgende Fragen zu

Aber ich kann keine Lösungen bekommen. Bitte helfen Sie mir, wie dies mit Robot Framework, Selenium in Pycharm Studio zu tun.

Antwort für Antwort # 1: @ demouser123

Noch bin ich Problem mit, hier mit ich den Screenshot

enter image description here

Es ist immer die Desktop-öffnet angeschlossen haben, und schlägt fehl . Bitte hilf mir.

I trided den folgenden Code

*** Variables *** 
${PO_AddShell}  //*[@id="fileToUpload"] 

click button ${PO_AddShell} 
Choose File ${PO_AddShell} E://Project/Publish/SampleTest.1500/rose.jpg 
+0

Bitte geben Sie die Fehler angeben, wenn Sie sagen, „es versagt“. – demouser123

+0

@ demouser123 - Ich kann den Befehl nicht angeben. –

Antwort

1

Gemäß der Dokumentation in der Selenium2library gegeben, die Syntax des Choose File Schlüsselwort zu verwenden ist

Choose File Locator File_name 

für einen Dialog oder Eingabe dass WebDriver Wechselwirkung treten können mit dem Beispiel würde so etwas tun

Choose File id=fileToUpload C://Downloads/Demo/Abc.txt 

Hier ist C://Downloads/Demo/Abc.txt der Speicherort auf dem System, auf dem die Datei gespeichert wird. Ändern Sie dies in Ihren eigenen Speicherort.

Auch erinnere ich mich an diese Lösung, die letztlich auch für mich funktionierte - SO Post about uploading from a Windows directory. Sie können dieses auch versuchen.

+0

Es öffnet den Dialog zum Öffnen von Dateien, aber es wählt die Datei nicht aus und klickt nicht auf Öffnen. –

+0

Was ist der Pfad und der von Ihnen verwendete Locator? – demouser123

+0

'Wählen Sie Datei xpath =. // div/input. $ {CURDIR} \ rose.jpg' –

0

Ich biete alternative Lösung für die Frage. Bitte versuchen Sie dies, wenn Sie nicht bekommen haben.

Voraussetzung für unter Skript ausgeführt wird:

auf Ihrem Rechner installiert Sikulix von diesen SikuliX ist dies relativ einfach Robot Framework-SikuliLibrary zu installieren und zu installieren.Sie können die Dokumentation erkunden, wenn Sie weitere Optionen wünschen SikuliX documentation. Erfassen Sie die Bilder mit einem Schnipsel wie Downloadpfad/Dateiname und aktualisieren Sie den Namen im folgenden Skript.

*** Settings *** 
Library   Selenium2Library 
Library   SikuliLibrary 

*** Test cases *** 
Login to Browser with download preferences 
[Documentation] This one is without specifying download location 
    Open Browser https://www.docdroid.net/ Chrome 
    Click Element id=selectFiles 
    Sleep 5 
    SikuliLibrary.Click  /images/download.PNG 
    SikuliLibrary.Click  /images/file.PNG 
    SikuliLibrary.Click  /images/open.PNG 

Wenn Sie Download-Speicherort angeben möchten, gehen Sie mit folgenden Skript

*** Settings *** 

    Library   Selenium2Library 
    Library   SikuliLibrary 

    *** Test cases *** 
    Login to Browser with download preferences 
    [Documentation] You can specify your download location 
     Open Browser https://www.docdroid.net/ Chrome 
     Click Element id=selectFiles 
     Sleep 5 
     SikuliLibrary.Input Text   /images/file_path.PNG  C:\\Users\\Madhu\\Downloads 
     Press Special Key  ENTER 
     #SikuliLibrary.Click  /images/download.PNG 
     SikuliLibrary.Click  /images/file.PNG 
     SikuliLibrary.Click  /images/open.PNG 
+0

Danke für Ihre Antwort. Ich bin am Wochenende, also werde ich diesen Code am kommenden Montag testen ... –

+0

Sikuli ist eine funktionierende Lösung für begrenzte lokale Tests, aber es funktioniert nicht mit Headless-Browser (Phantome, Chrom im Headless-Modus), noch Remote-Selen - Selen-Hub, oder der Browserstack der Cloud, Saucenlabors usw. Ich würde daher nicht empfehlen, diese harte Abhängigkeit in den Tests festzulegen. – Todor

+0

Danke @Todor .. Ich bin mir dessen nicht bewusst ... gibt es eine alternative Option, wenn ich sikuli im Headless-Modus verwenden möchte. – Madhu

Verwandte Themen