PyModel ist ein Open-Source-Modell-basierte Test-Framework in Python.
In Unit-Tests, die Programmiercodes die Testfälle, aber auch Codes Behauptungen, die überprüfen, ob jeder Testfall übergeben. In modellbasiertes Testen, der Programmierer Codes ein "Modell", die so viele Testfälle generiert, wie gewünscht und auch als das Orakel, das die Fälle überprüft.
Modellbasiertes Testen wird empfohlen, in der so viele Testfälle benötigt werden, dass es nicht möglich ist, sie alle von Hand codieren. Diese Notwendigkeit ergibt sich bei der Prüfung von Verhaltensweisen, die Geschichte-Abhängigkeit und Nichtdeterminismus, so dass viele Variationen (Datenwerte, Überlappungen, etc.) aufweisen sollte für jedes Szenario geprüft werden (oder Fall). Beispiele hierfür sind Kommunikationsprotokolle, Web-Anwendungen, Steuersysteme und Benutzeroberflächen.
PyModel unterstützt on-the-fly-Tests, die auf unbestimmte Zeit lang nicht wiederholenden Tests erzeugen kann als der Testlauf ausgeführt wird. PyModel können Testfälle auf Szenarien von Interesse durch Zusammensetzung, eine vielseitige Technik, die Modelle kombiniert durch Synchronisieren gemeinsamen Aktionen und Interleaving nicht gemeinsamen Aktionen konzentrieren. PyModel kann die Testabdeckung zu führen nach programmierbaren Strategien durch den Programmierer codiert.
PyModel bietet drei Programme:
- Pma.py pymodel Analysator: erzeugt eine Zustandsmaschine (FSM) und berechnet Eigenschaften, indem sie eine Modellprogramm, FSM, Testsuite oder ein Produkt davon.
- Pmg.py pymodel Grafiken: erzeugt eine Datei von grafischen Befehle von einer FSM.
- Pmt.py pymodel Tester: zeigt Spuren erzeugt Tests offline, führt offline Tests oder erzeugt und führt Tests on-the-fly.
Verwenden pma und PMG zu visualisieren und eine Vorschau des Verhaltens von PMT. Jeder Pfad durch den Graphen erstellt von pma (und PMG gezeichnet) eine Spur (Testlauf), die von PMT erzeugt werden kann, als PMA und pmt sind mit den gleichen Argumenten aufgerufen.
PyModel durch NModel beeinflusst, ist aber nicht eine Übersetzung oder Re-Implementierung
Anforderungen .
- Python
Kommentare nicht gefunden