Testing/de: Difference between revisions
(Updating to match new version of source page) |
(Updating to match new version of source page) |
||
Line 132: | Line 132: | ||
{{Emphasis|Siehe auch:}} [[FreeCAD_Scripting_Basics/de|FreeCAD Grundlagen Skripten]]. |
{{Emphasis|Siehe auch:}} [[FreeCAD_Scripting_Basics/de|FreeCAD Grundlagen Skripten]]. |
||
===Get a list of all top-level test modules=== |
|||
{{Code|code= |
|||
FreeCAD.__unit_test__ |
|||
}} |
|||
Note that the test modules returned here depend on whether a GUI available or not. I.e. when executed in console mode, various tests ending in "Gui" are missing. |
|||
===Run specific tests=== |
|||
There are various ways of running tests using [https://docs.python.org/3/library/unittest.html Python's unittest library]. FreeCAD's test framework removes some of the boiler plate for the most common cases. |
|||
Run all tests defined in a python module: |
|||
{{Code|code= |
|||
import Test, TestFemApp |
|||
Test.runTestsFromModule(TestFemApp) |
|||
}} |
|||
Run all tests defined in a python class: |
|||
{{Code|code= |
|||
import Test, femtest.app.test_solver_calculix |
|||
Test.runTestsFromClass(femtest.app.test_solver_calculix.TestSolverCalculix) |
|||
}} |
|||
===Beispiel 1=== |
===Beispiel 1=== |
Revision as of 20:09, 27 January 2022
Einführung
Die Erprobung ist nicht wirklich eine Modellierungsarbeitsbereich, aber sie enthält einen Satz von Python Skripten, um verschiedene Tests an den Kernkomponenten von FreeCAD durchzuführen, 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
If a test does not need the GUI, it can also be executed in console mode by setting the -c
or --console
option in addition. This usually results in much faster startup time as the GUI is not loaded. For example:
freecad -c -t TestPartDesignApp
Testmenü
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 Template:MenuCommand/de, gib dann den Namen der Python Datei mit den Tests ein; z.B. für die Draft Arbeitsbereich wäre dies Template:MenuCommand/de, dann drücke Start.
Testfunktionen
Dies ist die Liste der Testanwendungen ab 0.15 git 4207:
TestAPP.All
Testfunktion hinzufügen
Basistests
Testfunktion hinzufügen
EinheitTests
Testfunktion hinzufügen
Dokument
Testfunktion hinzufügen
UnicodeTests
Testfunktion hinzufügen
MeshTestsApp
Testfunktion hinzufügen
TestDraft
Testfunktion hinzufügen
TestSketcherApp
Testfunktion hinzufügen
TestPartApp
Testfunktion hinzufügen
TestPartDesignApp
Testfunktion hinzufügen
TestPartApp
Path workbench test cases:
- depthTestCases:
- PathTestUtils:
- TestDressupDogbone: Test functionality of Dogbone dressup.
- TestHoldingTags: Test functionality of Holding Tags dressup.
- TestPathAdaptive: Test selection capability of Adaptive operation.
- TestPathCore: Test core functionality of Path workbench.
- TestPathDeburr: Test general functionality of Deburr operation.
- TestPathGeom: Test various functions available in the PathGeom module.
- TestPathHelix: Test general functionality of Helix operation.
- TestPathLog: Test various functions available in the PathLog debugging and feedback module.
- TestPathOpTools:
- TestPathPreferences: Test various functions available in the PathPreferences module.
- TestPathPropertyBag:
- TestPathSetupSheet:
- TestPathStock:
- TestPathThreadMilling:
- TestPathTool:
- TestPathToolBit:
- TestPathToolController:
- TestPathTooltable:
- TestPathUtil: Test various functions available in the PathUtil module.
- TestPathVcarve: Test general functionality of Vcarve operation.
- TestPathVoronoi:
Arbeitsbereich
Testfunktion hinzufügen
Menü
Testfunktion hinzufügen
Menu.MenuDeleteCases
Testfunktion hinzufügen
Menu.MenuCreateCases
Testfunktion hinzufügen
Skripten
Siehe auch: FreeCAD Grundlagen Skripten.
Get a list of all top-level test modules
FreeCAD.__unit_test__
Note that the test modules returned here depend on whether a GUI available or not. I.e. when executed in console mode, various tests ending in "Gui" are missing.
Run specific tests
There are various ways of running tests using Python's unittest library. FreeCAD's test framework removes some of the boiler plate for the most common cases.
Run all tests defined in a python module:
import Test, TestFemApp
Test.runTestsFromModule(TestFemApp)
Run all tests defined in a python class:
import Test, femtest.app.test_solver_calculix
Test.runTestsFromClass(femtest.app.test_solver_calculix.TestSolverCalculix)
Beispiel 1
Innerhalb der Python-Konsole von FreeCAD kann das folgende Code-Format benutzt werden, um eingebaute Tests auszuführen. Ersetze den roten "TestFem"-Text im folgenden Code mit dem gewünschten Namen des Testmoduls.
- Benutze bspw. "TestPathApp", um alle Einheitentests für das Path-Arbeitsgebiet Einheitentest-Gerüst auszuführen.
- Untermodule sind über die Punktnotation verfügbar, wie "TestPathApp.TestPathAdaptive", um nur die adaptiven Einheitentestd innerhalb des größeren Path-Arbeitsgebiets-Test-Gerüsts auszuführen.
- Mehrere Testmodule oder Untermodule können kombiniert werden durch hinzufügen eines weiteren `suite.addTest(...)`-Methoden-Aufrufs genau wie der im folgenden Code, aber mit einer anderen Modul- oder Untermodul-Referenz.
- Die Ausgaben des folgenden Codes werden im Reportansichts-Paneel innerhalb der FreeCAD-GUI angezeigt.
- Der Quell-Code wurde aus dem Beitrag des FreeCAD-Forum-Benutzers sgrogan kopiert, im unit tests per python-Thema, mit dortiger Nennung von Forum-Benutzer wmayer.
import unittest
suite = unittest.TestSuite()
suite.addTest(unittest.defaultTestLoader.loadTestsFromName("TestFem"))
r = unittest.TextTestRunner()
r.run(suite)
Zusätzliche Quellen
Forum-Themen
- Support for running specific unit tests with --run-test #331 (Unterstützung für die Ausführung bestimmter Einheitentests mit --run-test #331)
- Erste Schritte
- Installation: Herunterladen, Windows, Linux, Mac, Zusätzlicher Komponenten, Docker, AppImage, Ubuntu Snap
- Grundlagen: Über FreeCAD, Graphische Oberfläche, Mausbedienung, Auswahlmethoden, Objektname, Programmeinstellungen, Arbeitsbereiche, Dokumentstruktur, Objekteigenschaften, Hilf FreeCAD, Spende
- Hilfe: Tutorien, Video Tutorien
- Arbeitsbereiche: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework