robot class selenium webdriver with java
Deze tutorial legt het gebruik, voorbeelden en functionaliteiten van robotklasse in Java en de integratie met Selenium Framework uit:
Robot Java is een Robot klas in de Java AWT-pakket. Het wordt over het algemeen gebruikt om real-time toetsenbord- en muisbewerkingen te simuleren die we handmatig uitvoeren.
Het belangrijkste doel van de Robot Class in Java is automatisering. Het mooie ervan is dat het gemakkelijk kan worden geïntegreerd met het huidige automatiseringsraamwerk om het bereik te vergroten.
Wat je leert:
- Robotklasse in Java
- Gevolgtrekking
Robotklasse in Java
In deze tutorial zullen we leren over Selenium-integratie met Robot Class in Java, maar over het algemeen kan Java Robot Class worden gebruikt in elk automatiseringsraamwerk dat op Java is gebouwd.
Functies van robotklasse simuleren
Er zijn veel functionaliteiten van Robot Class in Java, hieronder worden enkele bekende methoden genoemd:
# 1) Toetsenbordfuncties
De toetsenbordfuncties van de Robot-klasse hebben over het algemeen betrekking op de simulatie van verschillende toetsen die beschikbaar zijn in de toetsenborden en hun bewerkingen.
Openbare ongeldige toets Press (int keycode)
Deze functie drukt op de invoerparametertoets. Om de operatie te voltooien, moet de sleutelvrijgavemethode worden gebruikt.
Volg het onderstaande codefragment:
Hier, in het bovenstaande codefragment, drukken we gewoon op CTRL + V. De methode KeyEvent is gekoppeld aan andere toetsen die beschikbaar zijn voor ons toetsenbord. Je kunt ze allemaal proberen.
Public void keyRelease (int keycode)
Deze methode geeft de invoerparametersleutel vrij. Dit is een nabewerking naar de toetsaanslagmethode.
Volg het onderstaande codefragment:
Hier in het bovenstaande codefragment geven we CTRL + V vrij. Net als hierboven vermeld, wordt de methode KeyEvent ook geassocieerd met andere toetsen die beschikbaar zijn voor ons toetsenbord. Je kunt ze allemaal proberen.
# 2) Muisfunctionaliteiten
De muisfunctionaliteiten hebben betrekking op het simuleren van verschillende bewerkingen van de muis.
Public void mouseMove (int x, int y)
Hier bepalen de twee parameters de coördinaten van het scherm. Zodra we de coördinaten hebben gegeven, beweegt de muis naar het punt van de opgegeven coördinaten van het scherm.
Volg het gegeven codefragment:
robot.mouseMove (0, 900);
Hier is de positie van de x-parameter 0, en de y-parameter is 900. Dus de muis zal naar dat punt gaan. Men kan een fout- en proefmethode uitvoeren om naar de verschillende posities van het scherm te gaan.
Public void mousePress (int knoppen)
Men kan zich deze functionaliteit voorstellen met keyPress-functionaliteiten om een duidelijk beeld te krijgen. Deze methode simuleert mousePress-functies.
Volg het onderstaande codefragment:
Public void mouseRelease (int knoppen)
Men kan zich deze functionaliteit voorstellen met keyPress-functionaliteiten om een duidelijk beeld te krijgen. Deze methode simuleert mousePress-functies.
Volg het onderstaande codefragment:
Notitie Er zijn verschillende andere methoden beschikbaar voor verkenning. Maar de bovenstaande methoden worden het meest gebruikt. Om andere methoden te verkennen, kan men echter zoeken naar Robot Java-klasse in Oracle-documenten.
Gebruik van robotklasse in Java
Wanneer en waar kunnen we Robot Class in Java gebruiken om de functionaliteit effectief te verbeteren in een automatiseringsraamwerk?
Zoals we allemaal weten, kan Selenium worden gebruikt om webapplicaties te automatiseren. Deze webapplicaties in Selenium gebruiken het onderliggende webobject (locators) van de webapp om de positie op de webpagina te bepalen en dienovereenkomstig te opereren. Nu zien we in bepaalde gevallen dat we Windows-verificatiepop-up of andere pop-upvensters moeten afhandelen tijdens het automatiseren op het Windows-besturingssysteem.
Selenium kan Windows-acties niet automatiseren, maar we kunnen Robot Class in Java gebruiken om de taak te volbrengen.
Voorbeelden van Java Robot Class
Voorbeeld 1: Robotklasse gebruiken om enkele Windows-functionaliteiten te automatiseren
Soms kan een klein onderdeel / module van de gehele webapplicatie in flash worden ontworpen. We kunnen de Robotklasse gebruiken om dat onderdeel af te handelen. Omdat webobjecten verborgen blijven voor het onderdeel dat in flash is ontworpen.
beste software voor het klonen van schijven windows 10
Een andere belangrijke functie die kan worden geautomatiseerd met Robot Class in Java, zijn Rich Text Editors, die soms ingebed blijven in webapplicaties. Er zijn verschillende operationele functies in RTF-editors die vrij eenvoudig te automatiseren zijn met deze klasse.
Voorbeeld 2: Robot Class gebruiken voor het automatiseren van RTF-velden
Notitie Er zijn andere open-source tools beschikbaar op de markt, zoals Auto IT (speciaal ontworpen om Windows GUI te automatiseren), Sikuli (beeldverwerkingstool), enz. om soortgelijke taken uit te voeren.
Dit is waar, maar Robot Class in Java wordt geleverd met JDK. We hebben dus geen andere tool nodig om te installeren, dit is een duidelijk voordeel als men een op Java gebaseerd automatiseringsraamwerk gebruikt.
Automatisering van RTF-velden
Voorbeeldfoto:
Voorbeeldfragment:
Hier zijn twee functionaliteiten van de RTF-editors geautomatiseerd met behulp van vet en cursief pictogram.
Automatisering van sommige Windows-functionaliteiten
Dit codefragment behandelt over het algemeen het starten vanaf het startpictogram tot het bekijken van de systeemconfiguratie. Met behulp van een soortgelijk concept kan men ook omgaan met het genereren van pop-ups van vensters tijdens het opstarten of tussen bewerkingen op een webpagina.
Tips om Robot Java op te nemen in het bestaande Java + Selenium Framework
Nu gaan we zien hoe we het hierboven gedemonstreerde stuk codes kunnen wijzigen, zodat we hetzelfde kunnen opnemen in een bestaand Selenium + Java-framework.
Let op: dit is een concept en er zijn veel andere manieren om hetzelfde te bereiken. We kunnen dit concept verder uitbreiden / aanpassen om te voldoen aan de zakelijke behoeften die van project tot project kunnen variëren.
Maak eerst een klasse die alle gangbare methoden of de beschikbare methoden van de Robotklasse zal bevatten, zodat we die methoden kunnen gebruiken voor alle andere klassen waar we testcases schrijven.
Onderstaande codefragmenten demonstreren dit:
Hier hebben we een paar methoden genomen, men kan op dezelfde manier andere methoden toevoegen op basis van hun projectbehoeften.
Elke methode is gekoppeld aan één schakelkast, zodat het sleutelwoord voor de zaak waar en wanneer nodig kan worden gebruikt.
Laten we nu eens kijken hoe we de code die we hebben geschreven kunnen transformeren om de RTF-editor te automatiseren:
Raadpleeg het onderstaande codefragment om te begrijpen dat:
We maken het object van de CommonRobotMethods-klasse binnen de seleniumFramework-klasse en openen de methoden die zijn gedefinieerd in de CommonRobotMethods-klasse via. Schakel tussen trefwoorden die zijn gedefinieerd in de klasse CommonRobotMethods.
Hier hebben we een interface gemaakt om alle inputs op te schrijven die kunnen worden geëxternaliseerd. Maar men kan in Excel / Properties of interface opsplitsen en schrijven op basis van hun comfortniveau of zakelijke behoeften.
Gevolgtrekking
Hopelijk is het nu duidelijk hoe Robot Class te gebruiken binnen een Selenium + Java-framework. We wensen dat iedereen dit artikel interessant en nuttig vindt bij het leren van het concept.
Aanbevolen literatuur
- Cucumber Selenium Tutorial: Cucumber Java Selenium WebDriver Integration
- Java Basics: Java Syntax, Java Class en Core Java Concepts
- Verken de essentie van Java in Selenium met voorbeelden
- Integratie van selenium met JMeter
- Zelfstudie voor Java-scannerklassen met voorbeelden
- Zelfstudie voor Java-array-klassen - java.util.Arrays-klasse met voorbeelden
- Wat is Java-vector | Java Vector Class-zelfstudie met voorbeelden
- Java-interface en abstracte les met voorbeelden