how upload file using selenium webdriver 3 methods
Leer verschillende methoden voor het omgaan met het uploaden van bestanden in Selenium met codevoorbeelden:
Het uploaden van bestanden wordt uitgevoerd wanneer het nodig is om een bestand of document op een specifieke website te uploaden, zoals formulieren, registratiepagina's, uploaders van documenten, enz.
Het uploaden van een bestandsproces omvat het bladeren door een bestand vanaf de gewenste locatie of vanaf uw computer en het uploaden naar de website.
Bekijk hier ALLE Selenium-handleidingen
Wat je leert:
Selenium Upload-bestand
Het uploaden van bestanden in Selenium kan mensenwerk vergemakkelijken en kan eenvoudig worden gedaan door de sendKeys () methode. Na het uploaden van een bestand wordt een bericht weergegeven waarin wordt bevestigd of het uploaden van het bestand is gelukt. Er zijn veel meer van dergelijke automatiseringsmethoden voor het uploaden van bestanden.
Onderwerpen die in deze zelfstudie aan bod komen, zijn onder meer het uploaden van bestanden in HTML, methoden voor het verwerken van het uploaden van bestanden in Selenium (waaronder methoden namelijk: het gebruik van sendKeys en vervolgens het gebruik van AutoIT en Robotklasse).
Deze tutorial legt ook de implementatie uit van code voor het omgaan met het uploaden van bestanden met behulp van deze methoden in Selenium, waarna we een paar voorbeelden zullen zien waarbij het uploaden van bestanden wordt uitgevoerd met behulp van Selenium.
Bestand uploaden in HTML
De onderstaande code-implementatie legt de bewerking van het uploaden van bestanden op de HTML-pagina uit. De HTML-code laat zien hoe de uploadbewerking kan worden uitgevoerd door eerst op het Kies bestand om door het te uploaden bestand te bladeren en klik vervolgens op Upload bestand optie, waarna we kunnen zien dat het bestand met succes is geüpload.
De bovenstaande afbeelding bestaat uit de HTML-pagina gemaakt en hieronder is de HTML-code voor hetzelfde. Laten we de HTML-code snel bekijken.
Dus bij het uploaden van het gewenste bestand door op de Upload bestand optie, wordt de onderstaande pagina (afbeelding) weergegeven (d.w.z. het geüploade afbeeldingsbestand wordt weergegeven) die bevestigt dat het gekozen bestand om te uploaden succesvol is geüpload.
(beeld bron
Methoden om bestanden in selenium te uploaden
Laten we enkele methoden bekijken voor het afhandelen van bestandsuploads en ook de implementatie van code daarvoor.
Bestanden uploaden in Selenium kan worden gedaan met de onderstaande methoden:
- Met de methode sendKeys
- Met behulp van AutoIT-tool
- Met de hulp van Robot Class
# 1) SendKeys-methode gebruiken
De meest eenvoudige manier om bestanden in Selenium te uploaden, is door de sendKeys-methode te gebruiken. Het is een ingebouwde functie voor het uploaden van bestanden in Selenium.
De syntaxis is als volgt:
Laten we de code-implementatie voor de bovenstaande techniek begrijpen:
Voor het uploaden van bestanden met deze methode, moeten we eerst het element of de knop voor het uploaden van bestanden inspecteren, en vervolgens met sendKeys bladeren door het pad waar het daadwerkelijke te uploaden bestand wordt bewaard. Plaats het pad samen met de bestandsnaam in sendKeys zodat het programma naar het genoemde pad wordt genavigeerd om het bestand op te halen.
Klik hierna op de knop Opslaan of Verzenden en het bestand wordt geüpload. Soms ontvangen we ook een bericht dat het bestand met succes wordt geüpload.
Code-implementatie met behulp van de sendKeys-methode:
beste boeken om cyberbeveiliging te leren
Voor het uploaden van bestanden met behulp van de sendKeys-optie, hoeven we dus gewoon de ingebouwde sendKeys-methode te gebruiken om het vereiste bestand met succes te uploaden.
Dit is de uitvoer van de bovenstaande code (voor Monster.com ) waar we een bericht kunnen zien dat wordt weergegeven als: 'Bestand succesvol geüpload' bij het uploaden van het bestand in de selenium-webdriver met behulp van de sendKeys-methode.
waar kan ik gratis anime online bekijken
# 2) AutoIT gebruiken
AutoIT is een freeware en een open-source automatiseringstool voor het Windows-besturingssysteem. Het is geschreven in een BASIC-scriptcomputertaal voor het automatiseren van de Microsoft Windows-gebruikersinterface. Het simuleert elke combinatie van toetsaanslagen, muisbewegingen en manipulatie van Windows-besturingselementen.
Stappen om de AutoIT-tool te downloaden en te installeren:
- Open koppeling
- Ga naar AUTOIT -> DOWNLOADS. Download de nieuwste AutoIT.
- Ga verder met de installatie en configuratie van AutoIT (volgende -> akkoord -> 32/64-bits selectie -> selectie van bestandsinstallatielocatie -> Voltooien.
- Er zijn 2 installatiebestanden: a) AutoIt versie 3 en B) SciTE auto 3.
- Open de AutoIT-editor nadat de installatie is voltooid.
- Ga naar de locatie waar installatiebestanden zijn opgeslagen, klik op het bestand ‘SciTE.exe’ en de AutoIT-editor wordt geopend. Zie de onderstaande schermafbeelding voor de AutoIT-editor.
AutoIT_Editor:
Laten we het nu in het kort begrijpen hoe deze tool te gebruiken:
- Open de AutoIT-editor.
- We moeten een eenvoudige code schrijven in de AutoIT-editor, die nodig is voor het uploaden van bestanden (de naam van het te uploaden bestand wordt in de code vermeld).
- Sluit nu de editor en klik er met de rechtermuisknop op, u ziet de optie voor het compileren van het script. Kies de optie compilatiescript (x64) voor een 64-bits machine en ga met een compilatiescript (x86) voor een 32-bits machine.
- Zodra de bovenstaande stap is voltooid, wordt een .exe-bestand gemaakt en dit bestand wordt vermeld in onze selenium-eclipsecode. Na compilatie, zoals te zien in de onderstaande afbeelding ‘Fileupload.exe’ bestand wordt gemaakt. Nu kunnen we gebruik maken van dit bestand in het Selenium-webstuurprogrammascript.
Opgeslagen_bestanden:
De onderstaande afbeelding helpt ons te begrijpen hoe het te uploaden bestand dat form.csv is, wordt geüpload door het selenium eclipse-script uit te voeren dat het bestand fileupload.exe uitvoert.
>> Bezoek dit bladzijde voor meer informatie over AutoIT.
We zullen de implementatie van deze methode later in deze tutorial zien.
Voordelen van AutoIT:
- AutoIT is een open-source tool waarvoor we niet hoeven te betalen.
- Met AutoIT kunnen kleine zelfstandige uitvoerbare bestanden worden gemaakt.
- Het ondersteunt eenvoudig op te nemen of af te spelen scripts.
- We kunnen de code gemakkelijk debuggen met console-schrijfopdracht
- Het heeft de mogelijkheid om verschillende GUI's te maken en herkent bijna alle standaard Windows-besturingselementen.
- Het is eenvoudig en gebruiksvriendelijk.
Nadelen van AutoIT:
- Het werkt alleen in het Windows-besturingssysteem
- Omdat kennis van fundamentele codeerprincipes een must is, blijkt het een geweldig hulpmiddel te zijn voor professionals, maar kan het een beetje ingewikkeld zijn voor beginners.
- AutoIT heeft tot dusver geen Java-ondersteuning.
- De gebruikers moeten afzonderlijke bibliotheken importeren terwijl ze verschillende vooraf gedefinieerde hulpprogramma-functies gebruiken.
Laten we nu naar de implementatiecode van File Upload gaan met AutoIT:
Hier zullen we zien hoe we het uploaden van bestanden met AutoIT in Selenium kunnen afhandelen. Laten we hiervoor het voorbeeld van de OrangeHRM-website bekijken.
Code-implementatie voor het verwerken van bestandsupload in Selenium met behulp van AutoIT:
Zoals te zien is in de bovenstaande code, is de volgende regel erg belangrijk omdat deze het gebruik van AutoIT laat zien:
Runtime.getRuntime (). Exec (“C: \ Gebruikers \ Chait \ Desktop \ autoit \ fileupload.exe”);
Hier,
- Looptijd : Het staat het script toe om te communiceren met de omgeving waarin het script wordt uitgevoerd.
- getRuntime (): Het wordt gebruikt om de huidige runtime te krijgen die aan het proces is gekoppeld.
- exec (): Het voert het AutoIT-script uit (hier is dat fileupload.exe).
Wanneer het programma deze regel uitvoert, gaat het door het bestand fileupload.exe waar de AutoIT-code wordt uitgevoerd zoals hieronder weergegeven:
Hier,
- ControleFocus: Deze methode stelt de invoerfocus in op het tekstvak ‘bestandsnaam’.
- ControlSetText: Deze methode definieert het pad van het bestand. Het bestand dat we zullen uploaden in het tekstvak ‘bestandsnaam’ - het pad wordt getraceerd.
- Controle Klik: Deze methode wordt gebruikt om op de knop ‘Openen’ van het venster voor het uploaden van bestanden te klikken.
De uitvoer voor de bovenstaande code wordt hieronder weergegeven:
(beeld bron
# 3) Met de hulp van Robot Class
Robots zoals we die kennen, helpen bij het beheren van verschillende activiteiten, zoals het uitvoeren van bepaalde taken, het omgaan met de toetsenbordfuncties, de muisfuncties en nog veel meer. Hier zullen we bepaalde functies begrijpen die handig zijn bij het besturen van het toetsenbord en de muis terwijl een applicatie wordt getest met Selenium
Belangrijke gebeurtenissen of methoden voor het implementeren van de robotklasse
Bij de implementatie van Robot class zijn er een paar methoden voor het uitvoeren van testscripts.
Deze worden hieronder genoemd:
- Toets indrukken(): Deze methode wordt aangeroepen als we een willekeurige toets willen indrukken.
-
- Voorbeeld: robot.keyPress (KeyEvent. UK_ENTER
- KeyRelease (): Deze methode wordt gebruikt om de ingedrukte toets los te laten.
- Voorbeeld: robot.keyRelease (KeyEvent. UK_ENTER
- MouseMove (): Wordt gebruikt als het nodig is om de muisaanwijzer over ‘X’ en ‘Y’ coördinaten te bewegen.
- Voorbeeld: robot.mouseMove ( coordinates.get.X () coordinates.get.Y ()
- MousePress (): Deze methode wordt aangeroepen als we de linkermuisknop willen indrukken.
- Voorbeeld: robot.mousePress (InputEvent. BUTTON_MASK
- MouseRelease (): Deze methode wordt gebruikt om de ingedrukte muisknop los te laten.
- Voorbeeld: robot.mouseRelease (InputEvent. BUTTON_DOWN_MASK
Voordelen van Robot Class
- Het uploaden van bestanden met de robotklasse is eenvoudig.
- Het behandelt de toetsenbord- en muisfuncties.
- Het afhandelen van pop-ups is ook mogelijk.
Nadelen van Robot Class
het implementeren van een prioriteitswachtrij in java
- Toetsenbord- of muisgebeurtenis zou alleen werken op de huidige instantie van het venster.
- Als tijdens het uitvoeren van een robotgebeurtenis de uitvoering van de code naar een ander venster wordt verplaatst, blijft de muis- of toetsenbordgebeurtenis in het vorige venster staan.
- Het is niet eenvoudig om tussen verschillende vensters te wisselen.
Implementatie van code voor het uploaden van bestanden met behulp van Robot Class:
Hiervoor kijken we naar het voorbeeld van de Grammarly.com website. Hieronder vindt u de implementatiecode voor het verwerken van bestandsuploads in Selenium met behulp van de robotklasse.
De uitvoer voor de bovenstaande seleniumcode wordt hieronder weergegeven:
Bestanden kunnen dus worden geüpload met behulp van een robotklasse, waar we het gebruik van invoergebeurtenissen zoals het indrukken van een toets en het loslaten van toetsen kunnen zien voor kopiëren, plakken, invoeren, enz.
Voorbeelden van bestandsuploads
Laten we enkele voorbeelden bekijken van het uploaden van bestanden die worden uitgevoerd met behulp van Selenium:
# 1) Gmail-account
In een Gmail-account, terwijl u iemand e-mailt, kunt u een bijlage toevoegen, d.w.z. een bestandsdocument dat van elk type kan zijn: doc, tekst, csv, afbeelding, pdf, enz. Hier komt het uploaden van bestanden in context.
Zie voor meer details de schermafbeelding van het uploaden van het bestand.
# 2) Document uploaden voor verificatie
Meestal moeten we voor registratiepagina's of formulieren documenten uploaden ter verificatie.
Zie de onderstaande afbeelding voor meer uitleg:
ID_Proof
Reg_form
Voor verschillende van dergelijke verificaties zoals bewijsverificatie, adresverificatie, onderwijsbewijs, etc. moeten specifieke documenten worden geüpload.
Gevolgtrekking
In deze tutorial hebben we dus het uploaden van bestanden op de HTML-pagina gezien. We hebben ook verschillende methoden gezien voor het verwerken van bestandsuploads in Selenium (waaronder methoden zoals het gebruik van sendKeys, het gebruik van AutoIT en het gebruik van Robotklasse). We begrepen ook de implementatie van code voor het verwerken van bestandsuploads in Selenium voor elk van deze methoden en keken uiteindelijk naar een paar voorbeelden.
Auteur Bio - Dit artikel is geschreven door Sonali Satpute, een gekwalificeerde B.E. (computer) van MITCOE, Pune, Professional Software Tester en Content Writer.
Lees de complete seleniumgids door
Aanbevolen literatuur
- Hoe om te gaan met Windows Pop-up in Selenium met AutoIT
- Hoe selecteer ik keuzerondjes in Selenium WebDriver?
- Hoe het selectievakje in selenium met voorbeelden te selecteren
- Cucumber Selenium Tutorial: Cucumber Java Selenium WebDriver Integration
- Inleiding tot Selenium WebDriver - Selenium Tutorial # 8
- ChromeDriver Selenium-zelfstudie: Selenium Webdriver-tests op Chrome
- Robotklasse in Selenium WebDriver met Java
- AutoIt-zelfstudie - AutoIt downloaden, installeren en basis AutoIt-script