Der Arbeitsbereich Erprobung ist nicht wirklich ein Modellierungsarbeitsbereich, aber er enthält einen Satz von Python Skripten, zum Durchzuführen verschiedener Tests an den Kernkomponenten von FreeCAD, um Probleme zu beheben. Siehe auch Fehlerdiagnose.
Du kannst die Tests auf der Kommandozeile ausführen, indem du die Optionen -t
oder --run-test
verwendest.
Führe alle Tests durch:
freecad --run-test 0
Führe nur einen Teil des angegebenen Komponententests aus, z.B.:
freecad -t TestDraft
Wenn ein Test die Benutzerschnittstelle (GUI) nicht braucht, kann er auch im Konsolenmodus gestartet werden durch das zusätzliche Setzen der Option -c
oder --console
. Daraus resultiert eine erheblich kürzere Startzeit, da die GUI nicht geladen wird. Z.B.:
freecad -c -t TestPartDesignApp
Von den Test-Prozeduren erzeugte Dateien (z.B. Eingabedateien von TestFemApp werden im FEM_unittests-Ordner gespeichert) werden im von FreeCAD genutzten temp-Verzeichnis gespeichert, dass mit dem folgenden Befehl der Python-Konsole gefunden werden kann:
App.getTempPath()
Sie könnten fürs Debuggen nützlich sein.
Jedes oberste Verzeichnis in FreeCAD sollte eine Datei mit den Tests haben, die für diesen speziellen Arbeitsbereich oder dieses Modul ausgeführt werden können. Die Datei beginnt normalerweise mit dem Wort Test
.
Um einen Test aus FreeCAD heraus auszuführen, wechsle in den Test Arbeitsbereich, dann Testbefehle → TestWerkzeugeGui → Selbsttest → Wähle Testbezeichnung, gib dann den Namen der Python Datei mit den Tests ein; z.B. für die Draft Arbeitsbereich wäre dies TestEntwurf, dann drücke Start.
Dies ist die Liste der Testanwendungen ab 0.15 git 4207:
Testfunktion hinzufügen
Testfunktion hinzufügen
Testfunktion hinzufügen
Testfunktion hinzufügen
Testfunktion hinzufügen
Testfunktion hinzufügen
Testfunktion hinzufügen
Testfunktion hinzufügen
Testfunktion hinzufügen
Testfunktion hinzufügen
Path workbench test cases:
Testfunktion hinzufügen
Testfunktion hinzufügen
Testfunktion hinzufügen
Testfunktion hinzufügen
Siehe auch: Grundlagen der Skripterstellung in FreeCAD.
FreeCAD.__unit_test__
Beachte, dass die Test-Module hier zurückgeben, ob sie von der GUI abhängig sind, oder nicht. Wenn sie bspw. im Konsolen-Modus ausgeführt werden, enden verschiedene Tests mit der Meldung "Gui are missing".
Es gibt verschiede Wege Tests mit Pythons Unit-Test-Bibliothek auszuführen. FreeCADs Test-Framework entfernt einige der Boiler-Plate-Test für die Standardfälle.
Alle Tests in einem bestimmten Python-Module ausführen:
import Test, TestFemApp
Test.runTestsFromModule(TestFemApp)
Alle Tests in einer bestimmten Python-Klasse ausführen:
import Test, femtest.app.test_solver_calculix
Test.runTestsFromClass(femtest.app.test_solver_calculix.TestSolverCalculix)
Innerhalb der Python-Konsole von FreeCAD kann das folgende Code-Format benutzt werden, um eingebaute Tests auszuführen. Den roten Text "TestFem" im folgenden Code mit dem gewünschten Namen des Modultests ersetzen.
import unittest
suite = unittest.TestSuite()
suite.addTest(unittest.defaultTestLoader.loadTestsFromName("TestFem"))
r = unittest.TextTestRunner()
r.run(suite)