___ answer8271447 ___
Wir haben gerade angefangen, FitNesse zu verwenden, und bisher bin ich mit der Entscheidung zufrieden. Ein sehr kurzer Überblick:
- Sie schreiben Ihre Tests in einem Wiki.
- Sie schreiben ein 'test fixture' Modul (welches eine c # Assembly sein kann)
stellt die Brücke zwischen den "Tests" im Wiki und dem SUT
(System unter Test).
- Wenn Sie die Tests ausführen, verwendet die FitNesse-Engine Reflektion, um die Wiki-Tests in Aufrufe Ihrer Test-Fixture-Assembly zu übersetzen, die wiederum das SUT aufruft. Die Rückgabewerte werden an das Wiki zurückgegeben, damit Sie sie "bestätigen" können.
Die öffentliche Schnittstelle des Testbefestigungscodes ist die Sprache, mit der Sie Tests im Wiki schreiben. Ich bin mir nicht sicher, ob ich das sehr gut erklärt habe, aber es gibt reichlich Ressourcen und Videos im Internet. Ich empfehle dieses von Bob Martin, Autor von FitNesse.
Ich habe FitNesse aus verschiedenen Gründen gewählt:
- gut etablierter Rahmen
- funktioniert mit .NET mit dem FitSharp-Plugin: Ссылка
- weil die Tests im Wiki in der Sprache geschrieben sind, die du in deinem Fixture Code definierst, sind sie lesbar
- Tests können über die Befehlszeile aufgerufen werden, die wir für Continuous Integration benötigen.
- Robust 1: Wenn sich die Schnittstelle des SUT ändert, müssen Sie nur den Testbefestigungscode ändern, nicht die Tests
- Robust 2: Wir testen nicht auf der Ebene der flüchtigen Benutzeroberflächen.
Es braucht etwas Zeit, um sich daran zu gewöhnen, aber ich finde es viel zuverlässiger als unser derzeitiges Testkonzept über die Benutzeroberfläche. Wir machen dies derzeit in einer Home-Brew-Anwendung, bei der zuvor aufgezeichnete UI-Aktionen abgespielt und Screenshots verglichen werden. Wenn die Tests rot sind, ist es selten, weil das SUT tatsächlich gebrochen ist. In der Regel haben wir Timing-Probleme, da UI-Steuerelemente nicht sofort reagieren. Daher müssen Verzögerungen zwischen den UI-Aktionen eingebaut werden. Dies bedeutet, dass die gesamte Testsequenz über Nacht abgearbeitet wird.
___ answer8270933 ___
mSpec (Maschinenspezifikationen) ist ein TDD / BDD-Framework, das sehr beliebt ist.
nUnit ist ein Unit-Test-Framework (welches auch für Akzeptanztests verwendet werden kann ).
___ qstntxt ___
Ich übe TDD schon seit einiger Zeit, ich möchte meine Fähigkeiten verbessern und ATDD machen,
Ich habe über Frameworks für Ruby und Java gelesen, habe aber nicht viel über .NET gehört.
Was ist das am meisten gepflegte neueste Framework in .NET zum Schreiben von Akzeptanztests?
BEARBEITEN: Nachdem ich mehr gelesen habe, möchte ich darauf hinweisen, dass ich Akzeptanztests für Websites und Webapplikationen in Verbindung gebracht habe, und vielleicht muss es auch als GUI-Test betrachtet werden.
___ tag123unittesting ___ Unit Testing ist eine Methode, bei der einzelne Quellcode-Einheiten auf ihre Tauglichkeit getestet werden.
___ tag123tdd ___ Test-Driven Development (TDD) beinhaltet das Schreiben eines fehlgeschlagenen automatisierten Tests, um anzugeben, was erstellt werden soll. Der Test wird dann durchgeführt, um einen Code zu schreiben, der die getestete Bedingung erfüllt. Schließlich wird der Code überarbeitet.
___ qstnhdr ___ Was ist das am meisten gepflegte neueste Framework in .NET zum Schreiben von Akzeptanztests? [geschlossen]
___ answer8271036 ___
Bitte betrachten Sie Ranorex als eines von ziemlich neuen Tools.
Ссылка
Sie machen einen tollen Job, indem sie einen kompletten Werkzeugsatz inklusive Unit-Test-API, Automation Engine und einem Testrekorder zur Verfügung stellen.
Kurz gesagt - Sie schreiben Ihre Tests in C # oder Sie "notieren" sie mit dem Rekorder und der Rekorder schreibt sie als C # -Code.
Dann antworten Sie ihnen und führen Ihren C # -Code aus. Sie erstellen so viele Bestätigungen, wie Sie möchten, und mit der Automatisierungs-API können Sie alles, was auf dem Bildschirm sichtbar ist, automatisieren.
Tolles Werkzeug für ATDD, wir benutzen es seit einiger Zeit und wir sind zufrieden.
___ tag123net ___ Das .NET-Framework ist ein Software-Framework, das hauptsächlich für das Microsoft Windows-Betriebssystem entwickelt wurde. Es enthält eine Implementierung der Basisklassenbibliothek, Common Language Runtime (allgemein als CLR bezeichnet), Common Type System (allgemein als CTS bezeichnet) und Dynamic Language Runtime. Es unterstützt viele Programmiersprachen, einschließlich C #, VB.NET, F # und C ++ / CLI. NICHT für Fragen zu .NET Core verwenden.
___ tag123selenium ___ Selenium ist ein beliebtes Open-Source-Tool zur Automatisierung von Webbrowsern. Wenn Sie dieses Tag verwenden, schließen Sie auch andere Tags für die von Ihnen verwendeten Komponenten ein, z. Selen-Webdriver für die Sprachbindung, Selenid, Selen-Gitter, etc.
___ tag123akzeptanztest ___ Der Akzeptanztest ist ein Test, der durchgeführt wird, um festzustellen, ob die Anforderungen einer Spezifikation oder eines Auftrags erfüllt sind
___