Java >> Java Tutorial >  >> Java

Best Practices für TestProjekte

Ich habe ziemlich viel über das TestProject-Framework geschrieben, und mein TestProject-Tutorial vermittelt uns die technischen Fähigkeiten, die wir benötigen, wenn wir Tests für unsere Webanwendungen schreiben.

Das ist ein guter Anfang, aber es reicht nicht. Bevor wir ein Werkzeug wirklich beherrschen können, müssen wir lernen, es richtig einzusetzen. Aus diesem Grund stellt dieser Blogbeitrag fünf Best Practices vor, die den besten Weg zur Verwendung des TestProject-Frameworks beschreiben.

Fangen wir an.

1. Achten Sie besonders auf die Dokumentation

Wenn wir Tests oder benutzerdefinierte Aktionen mit dem TestProject-Framework schreiben, sollten wir unseren Code anhand dieser Regeln dokumentieren:

  • Wir sollten unseren Testklassen richtige Namen geben . Der Name einer Testklasse sollte die getestete Funktion und das erwartete Ergebnis identifizieren. Dies ist wichtig, da es uns hilft, die richtige Datei zu finden, wenn wir den Quellcode eines bestimmten Testfalls lesen möchten.
  • Wir sollten den Namen und die Beschreibung unseres Testfalls angeben, indem wir den @Test verwenden Anmerkung . Da die Website app.testproject.io diese Informationen in ihren Testberichten verwendet, hilft uns dieser Ansatz, das Problem zu lokalisieren, wenn ein Testfall fehlschlägt. Wenn ein Testfall fehlschlägt und dieser Regel nicht folgt, müssen wir seinen Quellcode lesen, bevor wir wissen, was das Problem ist. Das ist Zeitverschwendung.
  • Wir sollten den Namen unserer Aktion angeben, indem wir den @Action verwenden Anmerkung weil der Name unserer Aktion auf den Testergebnissen angezeigt wird. Wenn wir einen benutzerfreundlichen Namen verwenden, sind unsere Testergebnisse leichter lesbar.
  • Wenn unser Test oder unsere Aktion Eingabeparameter hat, sollten wir jedem Eingabeparameter eine gute Beschreibung geben . Dies erleichtert uns das Leben, wenn wir unsere Tests auf der Website app.testproject.io ausführen, da diese Beschreibung in der Ansicht angezeigt wird, die es uns ermöglicht, die Standardparameterwerte unserer Eingabeparameter zu überschreiben.

2. Beseitigen Sie doppelten Code, indem Sie benutzerdefinierte Aktionen schreiben

Wenn wir Tests mit dem TestProject-Framework schreiben, besteht die Chance, dass wir doppelten Code identifizieren, der von mehreren Testklassen benötigt wird. Wir können dieses Problem lösen, indem wir eine benutzerdefinierte Aktion schreiben, die unseren Testklassen die erforderliche Funktionalität bereitstellt. Nachdem wir diese Aktion geschrieben haben, können wir den doppelten Code aus Testklassen entfernen.

Das TestProject-Framework unterstützt zwei verschiedene Aktionstypen:

  • Eine Webaktion ist eine gute Wahl, wenn wir auf das gesamte DOM zugreifen müssen.
  • Eine Webelement-Aktion ist eine gute Wahl, wenn wir Tests für eine Webanwendung schreiben müssen, die Komponenten enthält, die von mehreren Ansichten gemeinsam genutzt werden. Web-Element-Aktionen sparen uns viel Zeit, wenn wir es mit komplexen UIs zu tun haben, da das TestProject-Framework die erforderlichen Komponenten für uns findet und die Web-Element-Aktionen es uns ermöglichen, mit den gefundenen Komponenten zu interagieren. Mit anderen Worten, wir können unsere Tests schreiben (oder aufzeichnen), ohne uns in das komplexe DOM einzuarbeiten.

3. Schreiben Sie automatisierte Tests für benutzerdefinierte Testprojektaktionen

Da benutzerdefinierte TestProject-Aktionen im Wesentlichen Bibliotheken sind, die Funktionen für unsere Testfälle bereitstellen, sollten wir sicherstellen, dass diese Funktionen wie erwartet funktionieren. Wir könnten unsere Aktionen manuell testen, aber das Problem ist, dass wir dies jedes Mal tun müssten, wenn wir Änderungen an unseren Aktionen vornehmen. Das ist Zeitverschwendung.

Deshalb denke ich, dass wir mit JUnit automatisierte Tests für unsere TestProject-Aktion schreiben sollten. Diese Tests helfen uns, Zeit zu sparen, wenn wir überprüfen müssen, ob unsere Aktionen wie erwartet funktionieren, da unser Computer die ganze harte Arbeit für uns erledigt.

4. Nutzen Sie die Protokollierungsfunktionen des TestProject Framework

Das TestProject-Framework bietet Tools, mit denen wir den Fortschritt unserer Testfälle und Aktionen melden können. Wir sollten diese Tools nutzen, wenn wir Tests oder Aktionen mit dem TestProject-Framework schreiben, da eine umfassende Protokollierung uns hilft, fehlgeschlagene Testfälle zu debuggen.

Wenn wir diese Tools verwenden, sollten wir diese Regeln befolgen:

  • Wenn unser Testfall mehrere Schritte hat, sollten wir die verschiedenen Schritte identifizieren, indem wir eine Protokollnachricht an das TestProject-Framework senden. Dies hilft uns, den Schritt zu identifizieren, der unseren Test nicht bestanden hat.
  • Wir sollten den genauen Grund angeben, warum unser Test bestanden oder nicht bestanden wurde. Das macht uns das Leben viel einfacher, wenn ein Testfall fehlschlägt, weil wir genau wissen, warum er fehlgeschlagen ist.
  • Eine benutzerdefinierte Aktion sollte die Fehler melden, die bei ihrer Ausführung aufgetreten sind. Diese Fehlermeldungen sind nützlich, wenn wir fehlgeschlagene Testfälle debuggen müssen.
  • Wenn eine benutzerdefinierte Aktion Informationen aus dem gerenderten HTML-Dokument extrahiert, sollte sie die extrahierten Informationen melden. Dies hilft uns, fehlerhafte Testfälle zu debuggen.

5. Befolgen Sie die Selenium Best Practices

Da das TestProject SDK Selenium WebDriver verwendet, sollten wir die Best Practices von Selenium befolgen.

Zusammenfassung

Dieser Blogpost hat fünf Dinge gelehrt:

  • Wir sollten unsere Tests und Aktionen mit TestProject-Anmerkungen dokumentieren, da diese Anmerkungen uns das Leben erleichtern, wenn wir unsere Tests auf der Website app.testproject.io ausführen.
  • Wir sollten doppelten Code aus unseren Testsuiten entfernen, indem wir benutzerdefinierte Aktionen schreiben, die unseren Testklassen die erforderliche Funktionalität bieten.
  • Wir sollten automatisierte Tests für unsere TestProject-Aktionen schreiben, da uns diese Tests viel Zeit sparen, wenn wir sicherstellen müssen, dass unsere benutzerdefinierten Aktionen wie erwartet funktionieren.
  • Wir sollten die vom TestProject-Framework bereitgestellten Protokollierungstools nutzen, wenn wir Tests oder Aktionen schreiben, da eine umfassende Protokollierung uns hilft, fehlgeschlagene Testfälle zu debuggen.
  • Da das TestProject SDK Selenium WebDriver verwendet, sollten wir die Best Practices von Selenium befolgen.

Java-Tag