Die Java-Programmiersprache ist ein Open-Source-Framework, dieses Framework wird zum Erstellen und Ausführen automatisierter Tests verwendet. Die Java-Automatisierungstechnik befasst sich mit dem Code, der verwendet werden kann, um die Ausführung spezifischer Benutzerschnittstellenoperationen in der Java-Programmiersprache zu steuern.
Damit wir klar verstehen können, dass Java für die Automatisierung verwendet werden kann, werden wir heute in diesem Artikel lernen, wie wir Java für die Automatisierung mit Hilfe spezifischer Punkte und Beispiele in diesem Artikel verwenden können.
Umfang des Artikels
In diesem Artikel erfahren wir, wie und warum wir Java für Automatisierungstests verwenden sollten. Wir lernen die verschiedenen Techniken zur Automatisierung einer Java-Anwendung kennen Hauptfehlerquellen, die entschieden werden, um die drei Schlüsselbereiche zu rationalisieren oder anderweitig zu verbessern.
Einführung
Wir wissen, dass Java seit vielen Jahren von uns weit verbreitet ist, und jetzt gibt es viele leicht verfügbare Frameworks und Plugins , APIS und dort vorhandene Bibliotheken, die Java für die Automatisierung unterstützen. Die Java Virtual Machine (JVM) wird verwendet, um die Sprache Java zu einer plattformunabhängigen Sprache zu machen.
Wir können das Java-Programm auf jeder Maschine ausführen, auf der die JVM im Betriebssystem installiert ist. Um diese Funktionen nutzen zu können, müssen wir beim Starten des Anwendungsmodellierungsassistenten den Anwendungstyp in Java angeben. Java-Testen bietet ein umfassenderes Paket und ist ein nützlicher Testfall, der dabei hilft, sich um jedes Element der Anwendung zu kümmern. Aus diesem Grund verwenden wir Java zur Automatisierung.
Lassen Sie uns nun lesen über die verschiedenen Ansätze, die für die Automatisierung in Java verwendet werden können:
Verschiedene Arten der Automatisierung in Java:
Drei Möglichkeiten können für die Automatisierung in Java verwendet werden. Sie sind:
Wir können die Robot-Klasse verwenden, um in Java zu automatisieren. Wir können die Reflektion verwenden, um die Anwendung zu starten. Wir können unseren Code in eine andere Anwendung für die Java-Automatisierung einfügen.
Nun, da wir wissen, dass alle diese drei Prozesse verwendet werden für die Java-Automatisierung, also lassen Sie uns jetzt sehen, wie Sie jede dieser Methoden im Detail kennenlernen:
Wie wir die Roboterklasse verwenden können, um in Java zu automatisieren
Da wir wissen, dass Roboter eine ist der Klassen, die von der Java-Programmiersprache bereitgestellt werden, um Mausklick-/Tastaturereignisse zu simulieren. Wir können dies in jeder Klasse verwenden, um nicht nur Java, sondern jede Anwendung zu automatisieren.
Lassen Sie uns mehr über die möglichen Automatisierungsszenarien mit der Roboterklassentechnik in Java lesen:
Wir wissen, dass die Bildschirmauflösung ist auf allen Desktops gleich. Bei diesem Vorgang wird jede Anwendung mit einer festen Breite und Höhe geöffnet oder die Anwendung wird im maximierten Zustand geöffnet. Der Benutzer sollte keine anderen Vorgänge ausführen, während die Automatisierung ausgeführt wird.
Lassen Sie uns nun lesen zu den Vor-und Nachteilen dieses Verfahrens:
Vorteile
Dieses Verfahren führt einen Mausklick an der angegebenen Stelle aus. Bei diesem Verfahren können wir davon ausgehen, dass der Fokus bereits im gewünschten Feld vorhanden ist.
Lassen Sie uns nun über die Nachteile dieses Vorgangs lesen:
Nachteile
Wenn die Anwendung auf den Bildschirm verschoben wird, kann diese Methode nicht verwendet werden. Der Benutzer muss auf die Operation warten ist abgeschlossen. Das Abrufen von Werten aus beliebigen Feldern ist bei diesem Vorgang nicht möglich.
Nun das nächste p Der Prozess ist:
Reflexion verwenden
Der Reflektionsprozess in Java wird verwendet, um das Verhalten eines Programms zum Zeitpunkt der Ausführung des Programms zu untersuchen und zu ändern. Dies wird verwendet, um zu manipulieren, wie die Java-Anwendungen mit der JVM ausgeführt werden. Mit der Reflection-API können wir Klassen, Konstruktoren, Modifikatoren, Felder, Methoden und Schnittstellen zur Laufzeit untersuchen.
Die Programmiersprache Java bietet uns eine Funktion namens Reflection, die es uns ermöglicht, das Laufzeitverhalten einer Klasse, eines Felds oder einer Methode zur Laufzeit zu ändern. Daher können wir sagen, dass Reflexion als eine Technik definiert werden kann, bei der das Laufzeitverhalten eines unbekannten Objekts zur Laufzeit untersucht und modifiziert wird. Ein Objekt kann entweder eine Klasse oder ein Feld oder eine Methode sein.
Lassen Sie uns nun über die möglichen Automatisierungsszenarien dieses Automatisierungsprozesses lesen:
Wie wir Reflexion verwenden können, um Java zu automatisieren
Wir können einen einfachen Befehl namens java –jar UIApplication.jar ausführen, während wir schwere und umfangreiche Anwendungen in Java ausführen. Mit der Reflexions-API in Java können wir die Reflexion auf Entitäten wie Feld, Klasse, Konstruktor und Modifikator implementieren. Die Applet-Anwendungen können mit Hilfe eines einfachen Tags
Lassen Sie uns nun die Vor-und Nachteile dieser Automatisierungsmethode lesen:
Vorteile dieses Verfahrens
Bei diesem Verfahren ist eine Hintergrundverarbeitung möglich. Wir sind nicht auf die Bildschirmauflösung/Position der Anwendung auf dem Bildschirm angewiesen. Wir können dabei Werte von bestimmten Objekten abrufen Prozess, der im Prozess der Roboterklasse nicht möglich war.
Nachteile dieses Prozesses
Bei diesem Prozess können die Applets nicht automatisiert werden.Die als exe verpackten JAR-Dateien können mit diesem Prozess nicht automatisiert werden.Bei diesem Prozess werden die Thick-Client-Apps mit komplexer Startlogik lassen sich nur schwer automatisieren.
Lassen Sie uns nun etwas über die dritte Methode und die letzte Methode der Automatisierung in Java lesen:
Der Prozess des Einfügens von Code in ein laufendes virtuelles Java Maschine:
Dies ist eine der am besten geeigneten Methoden zur Automatisierung in Java. Es gibt zwei Ansätze zum Einfügen des Codes in die virtuelle Java-Maschine: die Agentmain-Methode und die verbleibende Methode. Die Klasse java.lang.instrument.Instrumentation kann verwendet werden, um Code beim Ausführen einer virtuellen Java-Maschine einzufügen.
Lassen Sie uns nun im Detail darüber lesen:
Wir können die main Methode:
Die Hauptmethode ist ein Mechanismus in Java, der mit Java verknüpft ist. lang.instrument-Paket, das zum Laden von Agenten verwendet wird, die die Bytecode-Änderungen in Java-Programmen und Java zu einer plattformunabhängigen Sprache machen. Der automatisierungsbezogene Code wird von der Hauptmethode ausgeführt. Diese beiden werden in derselben virtuellen Java-Maschine ausgeführt, sodass der Automatisierungscode problemlos auf UI-Objekte zugreifen kann.
Automatisierung möglicher Szenarien dieser Methode
Bevor wir die App starten, benötigen wir eine Umgebung Variable JAVA_TOOL_OPTIONS muss mit Wert als –javaagent:”
Vorteile dieser Methode
Mit dieser Methode können wir mit der Maus auf das angegebene Objekt klicken Als exe verpackte jar-Dateien können mit diesem Prozess automatisiert werden, was mit der Reflection-Methode nicht möglich war. Bei dieser Methode werden alle Java Network Launch Protocol (JNLP) Unterstützungsanwendungen können automatisiert werden. Bei dieser Methode können alle Applet-Anwendungen automatisiert werden, was mit der Reflection-Methode nicht möglich war. Bei dieser Methode werden zwei oder mehrere Applets, die in einen HTML-Code eingebettet sind, können ebenfalls automatisiert werden.
Nachteile dieser Methode
Diese Methode erfordert eine zusätzliche Perm ission für die Socket-Verbindung. Diese Methode hängt auch von der App ab, für die möglicherweise auch alle Berechtigungen erteilt werden müssen.
Verwendung der vordefinierten Umgebungsvariablen für die Automatisierung
Um darauf zuzugreifen, müssen wir hinzufügen den Java-Agent zusammen mit der Anwendung und dazu müssen wir den JVM-Parameter’-javaagent:
Schlussfolgerung
Wir können trennen jeden Test von jedem anderen Test. Wir sollten vermeiden, irrationale Behauptungen aufzustellen. Der Prozess des Einschleusens von Code in eine Drittanbieteranwendung mit Java-Instrumentierung ist der am besten geeignete Ansatz zur Automatisierung von Java-Anwendungen, den wir gelesen haben. Wir haben über die verschiedenen Prozesse gelesen der Automatisierung jeder Art von Java-Anwendungen und dabei haben wir die verschiedenen Hürden auf dem Weg identifiziert und überwunden und sind schließlich zu dem Schluss gekommen, dass wir Java für die Automatisierung verwenden können.