22 Stimmen

Pex-Benutzer: Was sind Ihre Eindrücke von Pex und automatisierten explorativen Tests im Allgemeinen?

Diejenigen von Ihnen, die bereits Pex Was sind Ihrer Meinung nach die Vor- und Nachteile von Pex als Werkzeug?

Was sind Ihrer Meinung nach die Vor- und Nachteile von "Automated Exploratory Testing" im Allgemeinen? als Ergänzung zu TDD/Unit Testing?

14voto

Peli Punkte 2455

Pex lässt Ihr Schreiben parametrisiert Einheitstests. In diesem Sinne passt es völlig in den TDD/Unit-Testing-Fluss: Schreiben Sie den Test, lassen Sie Pex ihn "erforschen", finden Sie einige fehlerhafte Tests, korrigieren Sie den Code, und so weiter.

Der große Vorteil ist, dass Sie Ihre Tests für Klassen von Eingaben, nicht nur ein paar fest kodierte Werte. Dies gibt mehr Ausdruckskraft für das Schreiben von Tests und zwingt auch zum Nachdenken über die Invariante/Erwartung, die Ihr Code erfüllen sollte (d.h. es ist schwieriger, Assertions zu schreiben).

12voto

Haacked Punkte 56079

Ich denke, dass Pex als Werkzeug für Sondierungstests wirklich faszinierend ist. In dieser Hinsicht sehe ich es als etwas, das ich der QA zur Nutzung überlassen möchte.

Als TDD-Tool braucht es etwas Arbeit, da TDD eine Entwurfstätigkeit ist. Allerdings gefällt mir die Richtung, die Peli einschlägt. Es spricht einiges für einen automatisierten, unterstützten Entwurf. Nur weil TDD ein Entwurfswerkzeug ist, gibt es zum Beispiel keinen Grund, warum ich nicht ein automatisiertes Werkzeug haben kann, das mich auf potenzielle Randfälle hinweist, während ich entwerfe, oder? Bauen Sie Qualität von Anfang an ein.

Sehen Sie sich diesen Beitrag an, in dem Peli Pex in einem TDD-ähnlichen Arbeitsablauf verwendet. http://blog.dotnetwiki.org/TDDingABinaryHeapWithPexPart1.aspx

6voto

Wenn Sie nach Literatur über das Schreiben von Theorien suchen (googeln Sie David Saff) - die eine allgemeinere Art und Weise des Schreibens von Unit-Tests sind, und verwenden Sie Pex als eine Theorie-Explorer Ich habe einen Schritt Veränderung in der Produktivität von meiner Erfahrung bisher gefunden. Ich habe gerade einen Blog-Beitrag geschrieben, der meine Erfahrungen mit Pex in TDD beschreibt, hier: http://taumuon-jabuka.blogspot.com/2009/01/theory-driven-development-using_11.html

und wie ich schon sagte - ich sehe es als TDD auf Steroiden! Es ersetzt in keiner Weise TDD, sondern erweitert die Aktivität.

5voto

Jon Dewees Punkte 2907

Ich bin wirklich begeistert von Pex. Es bietet Tests für seltene Fälle, die man sich nie ausdenken würde, vor allem, wenn das Team klein ist und die Person, die die Methoden schreibt, dieselbe ist wie die, die die Tests schreibt.

Außerdem werden darin vertragliche Verpflichtungen festgelegt, die Ihre Methoden einhalten müssen.

3voto

GregC Punkte 7615

Bei der testorientierten Entwicklung müssen Sie Ihren Code so strukturieren, dass er testbar ist. In dieser Hinsicht findet Pex clevere und umständliche Pfade durch Ihren Code und hilft so über einfache Abdeckungsmetriken hinaus.

Die große Stärke von Pex mit Moles ist das Verfolgen von Seiteneffekten bei der Brownfield-Entwicklung: Pex einmal ausführen und die Ausgaben speichern, dann Codeänderungen anwenden und Pex erneut ausführen, um zu sehen, was kaputt gegangen ist.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X