Heim >Web-Frontend >js-Tutorial >Beherrschen von Behauptungen in Python Selenium: Ein umfassender Leitfaden zum Testen
Beim Schreiben von Testautomatisierungsskripten in Selenium Python ist die Überprüfung, ob die tatsächlichen Ergebnisse mit den erwarteten Ergebnissen übereinstimmen, von entscheidender Bedeutung. Hier kommen Behauptungen ins Spiel. Behauptungen tragen dazu bei, sicherzustellen, dass Ihre Anwendung wie vorgesehen funktioniert, indem bestimmte Bedingungen überprüft und die Ausführung angehalten werden, wenn sie fehlschlagen.
In diesem Blog erläutern wir das Konzept der Assertionen in Selenium Python, stellen einige leicht verständliche Codebeispiele bereit und erklären, wie sie Ihre Testskripte robuster machen können. Lasst uns eintauchen!
Einfach ausgedrückt sind Behauptungen Prüfpunkte in Ihrem Testskript. Sie vergleichen die tatsächlichen Ergebnisse mit den erwarteten Ergebnissen. Und wenn der Vergleich fehlschlägt, löst die Behauptung eine Ausnahme aus und markiert den Test als fehlgeschlagen.
Wenn Sie beispielsweise eine Anmeldeseite testen, können Sie behaupten, dass der Benutzer bei der Anmeldung mit gültigen Anmeldeinformationen zu einem Dashboard weitergeleitet wird.
Python verfügt über ein integriertes Unittest-Modul, das Assertionsmethoden bereitstellt, die gut mit Selenium funktionieren. Einige der Behauptungsmethoden sind:
assertEqual(a, b)
Überprüft, ob a gleich b ist.
assertTrue(condition)
Überprüft, ob eine bestimmte Bedingung wahr ist.
assertFalse(condition)
Überprüft, ob eine bestimmte Bedingung falsch ist.
assertIn(a, b)
Überprüft, ob a in b vorhanden ist.
Lassen Sie uns dies anhand eines Beispiels untersuchen. Angenommen, wir möchten die Startseite von Google testen und feststellen, dass der Titel „Google“ enthält. Wir erstellen unsere with app.py-Datei mit folgendem Inhalt: –
# app.py file from selenium import webdriver import unittest class GoogleHomepageTest(unittest.TestCase): def setUp(self): # Set up the WebDriver self.driver = webdriver.Chrome() self.driver.get("https://www.google.com") def test_title(self): driver = self.driver page_title = driver.title # Assert that "Google" is in the title self.assertIn("Google", page_title, "Page title does not contain 'Google'") def tearDown(self): self.driver.quit() if __name__ == "__main__": unittest.main()
Oben haben wir unseren Test definiert. Er beginnt mit der Einrichtung der Umgebung, der Initialisierung des Browsers und der Navigation zur Google-Startseite. Anschließend wird der Testfall ausgeführt, der den Seitentitel abruft und überprüft, ob er das Wort „Google“ enthält. In der Teardown-Phase schließlich wird der Browser geschlossen, um die Testumgebung zu bereinigen.
Behauptungen einfach halten: Vermeiden Sie zu komplizierte Behauptungen. Sie sollten klar sein und sich auf eine Sache konzentrieren.
Nützliche Nachrichten bereitstellen: Fügen Sie aussagekräftige Nachrichten zu Behauptungen hinzu, um das Debuggen zu verbessern, wenn sie fehlschlagen.
Verwenden Sie Behauptungen sparsam: Behauptungen sind zwar wichtig, aber zu viele können Ihr Skript überladen. Setzen Sie sie dort ein, wo sie wirklich einen Mehrwert bieten.
Behauptungen mit Protokollen kombinieren: Verwenden Sie die Protokollierung, um die Testausführung zu verfolgen und Behauptungen zu ergänzen.
Assertions in Selenium Python sind Ihre bevorzugten Tools zur Validierung von Testergebnissen. Sie machen Ihre Tests nicht nur zuverlässiger, sondern helfen auch dabei, Fehler schnell zu erkennen. Durch die Kombination von Behauptungen mit einem klaren Testdesign können Sie sicherstellen, dass Ihre Automatisierungsskripte sowohl effektiv als auch leicht zu warten sind.
Im nächsten Teil dieses Blogs werden wir untersuchen, wie man Chromdriver mit einer Flask-Anwendung verwendet.
Behauptungen sind Prüfpunkte in Ihren Selenium-Testskripten, die tatsächliche Ergebnisse mit erwarteten Ergebnissen vergleichen. Wenn der Vergleich fehlschlägt, löst die Behauptung eine Ausnahme aus und markiert den Test als fehlgeschlagen. Sie sind von entscheidender Bedeutung, da sie sicherstellen, dass sich Ihre Anwendung wie erwartet verhält, und dabei helfen, Probleme beim Testen zu erkennen.
# app.py file from selenium import webdriver import unittest class GoogleHomepageTest(unittest.TestCase): def setUp(self): # Set up the WebDriver self.driver = webdriver.Chrome() self.driver.get("https://www.google.com") def test_title(self): driver = self.driver page_title = driver.title # Assert that "Google" is in the title self.assertIn("Google", page_title, "Page title does not contain 'Google'") def tearDown(self): self.driver.quit() if __name__ == "__main__": unittest.main()Dadurch wird überprüft, ob das Wort „Google“ im Seitentitel enthalten ist, und es wird eine Ausnahme ausgelöst, wenn dies nicht der Fall ist.
Einrichtung: Initialisieren Sie den WebDriver und navigieren Sie zur Zielwebseite.
Testfallausführung: Aktionen ausführen (z. B. Klicken oder Eingeben von Daten) und Ergebnisse mithilfe von Behauptungen überprüfen.
Teardown: Schließen Sie den Browser und bereinigen Sie die Testumgebung.
Behauptungen einfach halten: Konzentrieren Sie sich auf eine einzelne Bedingung, um das Debuggen zu vereinfachen.
Nützliche Meldungen bereitstellen: Fügen Sie aussagekräftige Fehlermeldungen hinzu, um die Fehlerbehebung zu erleichtern.
Verwenden Sie Behauptungen sparsam: Schließen Sie nur Behauptungen ein, die dem Test einen Mehrwert verleihen.
Behauptungen mit Protokollen kombinieren:Verwenden Sie die Protokollierung neben Behauptungen, um die Testausführung zu verfolgen.
Im nächsten Teil des Blogs wird erläutert, wie ChromeDriver mit einer Flask-Anwendung verwendet wird, und es werden Einblicke in die Integration von Selenium mit einem Webanwendungs-Framework für fortgeschrittenere Testszenarien gegeben.
Das obige ist der detaillierte Inhalt vonBeherrschen von Behauptungen in Python Selenium: Ein umfassender Leitfaden zum Testen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!