Wie funktioniert die Objektidentifizierung in QTP/UFT?

Was ist Objektidentifikation?

QTP verwendet außerdem eine „menschliche“ Technologie zur Objektidentifizierung. Während der Aufzeichnung versucht QTP, die Eigenschaften eines GUI-Objekts zu lernen, an dem eine Operation ausgeführt wird. Während der Laufzeit vergleicht Micro Focus UFT die gespeicherten Objekteigenschaften mit den tatsächlichen Eigenschaften des auf dem Bildschirm verfügbaren Objekts und identifiziert ein Objekt eindeutig, unabhängig von seiner Position auf dem Bildschirm.

Das gespeicherte Objekt wird zusammen mit seinen Eigenschaften aufgerufen TEST-Objekt

Während der Laufzeit wird das tatsächliche Objekt aufgerufen, das in der zu testenden Anwendung verfügbar ist Laufzeitobjekt

Dies sind HP UFTs „Testobjektmodell“

Was ist ein Objekt-Repository?

Informationen zu den Testobjekten werden in gespeichert Objekt-Repository

Add-Ins Hilfe bei der Einweisung Schnell Test im Voraus über die Art des aufzuzeichnenden Objekts informiert werden, um die zum Erlernen seiner Eigenschaften erforderliche Zeit zu verkürzen

Das folgende Video-Tutorial zeigt, wie QTP ein GUI-Objekt identifiziert (auf dem Bildschirm)

Klicken Sie HIER wenn das Video nicht zugänglich ist

QTP speichert Objekte und ihre Eigenschaften im Objekt-Repository, um sie während der Laufzeit zu identifizieren. Einem Objekt können zahlreiche Eigenschaften zugeordnet sein. In einer Webumgebung können beispielsweise einem Button die folgenden Eigenschaften zugeordnet sein.

Objekt-Repository

If QTP wird versuchen, sich alle verfügbaren Eigenschaften für ein Objekt zu merken, Die Größe des Objekt-Repositorys wird größer und die Ausführungszeit des Skripts nimmt drastisch zu. Um dies zu vermeiden, speichert QTP standardmäßig nicht alle Eigenschaften eines Objekts, sondern eine begrenzte Anzahl typischer Eigenschaften für ein Objekt, was dabei hilft eindeutige Identifikation. Diese Auswahl an Eigenschaften (die während der Aufzeichnungszeit gespeichert werden sollen) für verschiedene Umgebungen und Objekte wird in der Objektidentifizierung gespeichert

Betreff Description, obligatorische und unterstützende Eigenschaften

Ein Objekt Resorts und sein Wert heißen Betreff DescriptIonDas Objekt Description wird verwendet, um das entsprechende Objekt eindeutig zu identifizieren. Beispielsweise für eine WebButton-Eigenschaft "Name" und sein Wert“Anmeldung" zusammen können als Objekt bezeichnet werden Description für diesen Web-Button.

Um darauf zuzugreifen, wählen Sie in QTP im Menü „Extras“ die Option „Objektidentifikation“. Im Objekterkennungsdialog Box Sie können ein Dropdown-Menü aller installierten und geladenen Umgebungen sehen.

Sie können eine Umgebung auswählen und QTP füllt automatisch die Liste aller unterstützten Objekte aus, die zu dieser Umgebung gehören. Auf der rechten Seite listet QTP die Eigenschaften auf, die für das Objekt gespeichert werden. Die Liste ist unterteilt in

  1. Obligatorische Eigenschaften wird standardmäßig für dieses Objekt gespeichert
  2. Unterstützende Eigenschaften Falls QTP während der Aufzeichnungszeit des Skripts KEINE eindeutige Beschreibung des Objekts erstellen kann, das es speichert unterstützende Eigenschaften

Um dies besser zu verstehen, betrachten Sie das Beispiel eines Webbildes.

Betreff Description, obligatorische und unterstützende Eigenschaften

  • QTP speichert den Wert alt, HTML-Tag, Bildtyp und obligatorische Eigenschaften, auch wenn es ihn allein anhand der alt-Eigenschaft eindeutig identifizieren kann.
  • Falls mit der obligatorischen Eigenschaft keine eindeutige Beschreibung erstellt werden kann, speichert QTP unterstützende Eigenschaften. In diesem Fall speichert QTP die Klasseneigenschaft.
  • Wenn diese Eigenschaft dabei hilft, eine eindeutige Beschreibung des Objekts zu erstellen, speichert QTP den Dateinamen und die Höheneigenschaft nicht. Wenn eine Klasseneigenschaft nicht ausreicht, um eine eindeutige Beschreibung zu erstellen, speichert QTP die Dateinameneigenschaft. Wenn die Eigenschaft „Dateiname“ eine eindeutige Beschreibung erstellt, speichert QTP die Eigenschaft „Höhe“ usw. nicht.
  • Angenommen, während der Aufzeichnungszeit hat QTP nur Klasseneigenschaften gespeichert. Zur Laufzeit vergisst QTP die Unterscheidung zwischen obligatorischen und unterstützenden Eigenschaften und vergleicht alle aufgezeichneten Eigenschaften.
  • Auch wenn eine der Eigenschaften nicht mit dem gespeicherten Wert übereinstimmt, Das Skript schlägt fehl