Testing/pl: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
No edit summary
 
(64 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<languages/>
<languages/>


{{Docnav
{{Docnav/pl
|[[Debugging|Debugging]]
|[[Debugging/pl|Debugowanie]]
|[[FreeCAD_Build_Tool|FreeCAD Build Tool]]
|[[FreeCAD_Build_Tool/pl|FreeCAD Narzędzie do kompilacji]]
}}
}}


[[Image:Workbench_Test.svg|thumb|128px|Test workbench icon]]
[[Image:Workbench_Test.svg|thumb|128px|Ikonka FreeCAD dla środowiska pracy Test]]


{{TOCright}}
{{TOCright}}


== Introduction ==
<span id="Introduction"></span>
==Wprowadzenie==


The [[Testing|Test Framework Workbench]] is not really a modelling workbench, but it contains a set of [[Python|Python]] scripts to perform different tests on the core components of FreeCAD, in order to debug problems. See also [[debugging|debugging]].
Środowisko pracy [[Testing/pl|Test]] nie jest tak naprawdę programem do modelowania, ale zawiera zestaw skryptów środowiska [[Python/pl|Python]] do wykonywania różnych testów na głównych komponentach programu FreeCAD w celu usuwania problemów. Zobacz także stronę [[Debugging/pl|debugowanie]].


You can run the tests from the command line, by using the {{incode|-t}} or {{incode|--run-test}} options.
Testy można uruchamiać z wiersza poleceń, używając opcji {{incode|-t}} lub {{incode|--run-test}}.


Przeprowadzenie wszystkich testów:
Run all tests:


{{Code|code=
{{Code|code=
Line 22: Line 23:
}}
}}


Przeprowadzenie tylko niektórych testów jednostkowych, np:
Run only some the specified unit test, for example:


{{Code|code=
{{Code|code=
Line 28: Line 29:
}}
}}


If a test does not need the GUI, it can also be executed in console mode by setting the {{incode|-c}} or {{incode|--console}} option in addition. This usually results in much faster startup time as the GUI is not loaded. For example:
Jeśli test nie wymaga GUI, można go także wykonać w trybie konsoli, ustawiając dodatkowo opcję {{incode|-c}} lub {{incode|--console}}. Zwykle powoduje to znacznie szybszy czas uruchamiania, ponieważ GUI nie jest ładowane. Na przykład:


{{Code|code=
{{Code|code=
Line 34: Line 35:
}}
}}


<span id="Test_menu"></span>
== Test menu ==
==Menu Narzędzia test==


W każdym katalogu najwyższego poziomu w programie FreeCAD powinien znajdować się plik z testami, które można uruchomić dla danego programu lub modułu. Plik ten zwykle zaczyna się od słowa {{incode|Test}}.
Each top level directory in FreeCAD should have a file with the tests that can be run for that particular workbench or module. The file usually starts with the word {{incode|Test}}.


To run a test from within FreeCAD, switch to the Test Workbench, then {{MenuCommand|Test commands → TestToolsGui → Self test → Select test name}}, then enter the name of the Python file with the tests; for example, for the [[Draft Workbench|Draft Workbench]], this would be {{MenuCommand|TestDraft}}, then press {{Button|Start}}.
Aby uruchomić test z poziomu programu FreeCAD, należy przejść do środowiska Test Workbench, następnie {{MenuCommand|Test commands → TestToolsGui → Self test → Select test name}}, a następnie wpisać nazwę pliku Python z testami. Na przykład dla środowiska pracy [[Draft_Workbench/pl|Rysunek Roboczy]] będzie to {{MenuCommand|TestDraft}}, po czym należy nacisnąć przycisk {{Button|Start}}.


<span id="Test_functions"></span>
== Test functions ==
==Funkcje testujące==


This is the list of test apps as of 0.15 git 4207:
To jest lista aplikacji testowych od wersji 0.15 git 4207:


=== TestAPP.All ===
=== TestAPP.All ===


Dodanie funkcji testowania
Add test function


=== BaseTests ===
<span id="BaseTests"></span>
===Testy podstawowe===


Dodaj funkcje testowania
Add test function


=== UnitTests ===
<span id="UnitTests"></span>
===Testy jednostkowe===


Dodaj funkcje testowania
Add test function


=== Document ===
<span id="Document"></span>
===Dokument===


Dodaj funkcje testowania
Add test function


=== UnicodeTests ===
<span id="UnicodeTests"></span>
===Testy Unicode===


Dodaj funkcje testowania
Add test function


=== MeshTestsApp ===
=== MeshTestsApp ===


Dodaj funkcje testowania
Add test function


=== TestDraft ===
<span id="TestDraft"></span>
===Test środowiska Rysunek Roboczy===


Dodaj funkcje testowania
Add test function


=== TestSketcherApp ===
=== TestSketcherApp ===


Dodaj funkcje testowania
Add test function


=== TestPartApp ===
=== TestPartApp ===


Dodaj funkcje testowania
Add test function


=== TestPartDesignApp ===
=== TestPartDesignApp ===


Dodaj funkcje testowania
Add test function


=== TestPathApp ===
=== TestCAMApp ===


Testowanie środowiska pracy Path:
Path workbench test cases:
* depthTestCases:
* depthTestCases:
* PathTestUtils:
* PathTestUtils:
* TestDressupDogbone: Test functionality of Dogbone dressup.
* TestDressupDogbone: Test funkcjonalności ulepszenia podcięcia w narożnikach.
* TestHoldingTags: Test functionality of Holding Tags dressup.
* TestHoldingTags: Test funkcjonalności ulepszenia mostki utrzymujące.
* TestPathAdaptive: Test selection capability of Adaptive operation.
* TestPathAdaptive: Testowanie możliwości wyboru trybu pracy adaptacyjnej.
* TestPathCore: Test core functionality of Path workbench.
* TestPathCore:Test głównych funkcji środowiska pracy Path.
* TestPathDeburr: Test general functionality of Deburr operation.
* TestPathDeburr: Test ogólnej funkcjonalności operacji usuwania zadziorów.
* TestPathGeom: Test various functions available in the PathGeom module.
* TestPathGeom: Test różnych funkcji dostępnych w module PathGeom.
* TestPathHelix: Test general functionality of Helix operation.
* TestPathHelix: Test ogólnej funkcjonalności działania operacji Helisy.
* TestPathLog: Test various functions available in the PathLog debugging and feedback module.
* TestPathLog: Przetestuj różne funkcje dostępne w module debugowania i informacji zwrotnej PathLog.
* TestPathOpTools:
* TestPathOpTools:
* TestPathPreferences: Test various functions available in the PathPreferences module.
* TestPathPreferences: Test różnych funkcji dostępnych w module PathPreferences.
* TestPathPropertyBag:
* TestPathPropertyBag:
* TestPathSetupSheet:
* TestPathSetupSheet:
Line 107: Line 115:
* TestPathToolController:
* TestPathToolController:
* TestPathTooltable:
* TestPathTooltable:
* TestPathUtil: Test various functions available in the PathUtil module.
* TestPathUtil: Test różnych funkcji dostępnych w module PathUtil.
* TestPathVcarve: Test general functionality of Vcarve operation.
* TestPathVcarve: Test ogólnej funkcjonalności działania funkcji Vcarve.
* TestPathVoronoi:
* TestPathVoronoi:


=== Workbench ===
<span id="Workbench"></span>
===Środowiska pracy===


Dodaj funkcje testowania
Add test function


<span id="Menu"></span>
=== Menu ===
===Menu===


Dodaj funkcje testowania
Add test function


=== Menu.MenuDeleteCases ===
=== Menu.MenuDeleteCases ===


Dodaj funkcje testowania
Add test function


=== Menu.MenuCreateCases ===
=== Menu.MenuCreateCases ===


Dodaj funkcje testowania
Add test function


==Scripting==
<span id="Scripting"></span>
==Tworzenie skryptów==


{{Emphasis|See also:}} [[FreeCAD_Scripting_Basics|FreeCAD Scripting Basics]].
{{Emphasis|Zobacz również:}} [[FreeCAD_Scripting_Basics/pl|FreeCAD podstawy tworzenia skryptów]].


<span id="Get_a_list_of_all_top-level_test_modules"></span>
===Get a list of all top-level test modules===
===Wyświetl listę wszystkich modułów testowych najwyższego poziomu===


{{Code|code=
{{Code|code=
Line 137: Line 149:
}}
}}


Należy zauważyć, że zwracane tutaj moduły testowe zależą od tego, czy dostępny jest interfejs graficzny, czy nie. Tzn. jeśli test jest wykonywany w trybie konsoli, brakuje różnych testów kończących się na "Gui".
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.


<span id="Run_specific_tests"></span>
===Run specific tests===
===Wykonaj określone testy===


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.
Istnieje wiele sposobów uruchamiania testów przy użyciu [https://docs.python.org/3/library/unittest.html biblioteki unittest Python]. Szkielet testowy programu FreeCAD usuwa niektóre z najczęściej występujących przypadków.


Run all tests defined in a Python module:
Uruchamia wszystkie testy zdefiniowane w module Python:
{{Code|code=
{{Code|code=
import Test, TestFemApp
import Test, TestFemApp
Line 149: Line 162:
}}
}}


Run all tests defined in a Python class:
Uruchamia wszystkie testy zdefiniowane w klasie Python:
{{Code|code=
{{Code|code=
import Test, femtest.app.test_solver_calculix
import Test, femtest.app.test_solver_calculix
Line 155: Line 168:
}}
}}


<span id="Example_1"></span>
===Example 1===
===Przykład 1===


W konsoli Pythona programu FreeCAD do uruchamiania wbudowanych testów można użyć kodu w następującym formacie. Zamień tekst w kolorze czerwonym {{incode|"TestFem"}} w poniższym kodzie na nazwę żądanego testu modułu.
Within the Python Console of FreeCAD, the following code format may be used to run built-in tests. Replace the red "'''TestFem'''" text in the code below with the desired module test name.
* For example, use "'''TestPathApp'''" to run all unit tests for the Path workbench unit test framework.
* Na przykład użyj {{incode|TestPathApp}}, aby uruchomić wszystkie testy jednostkowe środowiska pracy Path.
* Submodules are available using dot notation, like "'''TestPathApp.TestPathAdaptive'''" to only run the Adaptive unit tests within the greater Path workbench test framework.
* Moduły podrzędne dostępne przy użyciu notacji kropkowej, na przykład {{incode|TestPathApp.TestPathAdaptive}}, aby uruchomić tylko testy jednostkowe Adaptive w ramach większego frameworka testowego środowiska pracy Path.
* Wiele modułów testowych lub modułów podrzędnych można połączyć, dodając kolejne wywołanie metody {{incode|suite.addTest(...)}}, tak jak w poniższym kodzie, ale z innym odniesieniem do modułu lub modułu podrzędnego.
* Multiple test modules or submodules may be combined by adding another `'''suite.addTest(...)'''` method call just like the one in the code below, but with a different module or submodule reference.
* Dane wyjściowe poniższego kodu będą znajdować się w panelu Widoku raportu w graficznym interfejsie użytkownika programu FreeCAD.
* Output for the code below will be in the Report View panel within the FreeCAD GUI.
* Code source is copied from post by FreeCAD forum user, ''sgrogan'', in the [https://forum.freecadweb.org/viewtopic.php?style=3&p=153251#p153251 unit tests per python] topic, with credit there given to forum user, ''wmayer''.
* Źródło kodu jest skopiowane z postu użytkownika forum FreeCAD, ''sgrogana'', w temacie [https://forum.freecadweb.org/viewtopic.php?style=3&p=153251#p153251 testy jednostkowe w pythonie], z przypisaniem do użytkownika forum, ''wmayer''.


{{Code|code=
{{Code|code=
Line 172: Line 186:
}}
}}


<span id="Additional_Resources"></span>
==Additional Resources==
==Zasoby dodatkowe==


<span id="Forum_Topics"></span>
===Forum Topics===
===Tematy na forum===


* [https://forum.freecadweb.org/viewtopic.php?style=3&f=27&t=18379 Support for running specific unit tests with --run-test #331]
* [https://forum.freecadweb.org/viewtopic.php?style=3&f=27&t=18379 Support for running specific test jednostkowy z --run-test #331]




{{Docnav
{{Docnav/pl
|[[Debugging|Debugging]]
|[[Debugging/pl|Debugowanie]]
|[[FreeCAD_Build_Tool|FreeCAD Build Tool]]
|[[FreeCAD_Build_Tool/pl|FreeCAD Narzędzie do kompilacji]]
}}
}}



Latest revision as of 12:50, 23 April 2024

Ikonka FreeCAD dla środowiska pracy Test

Wprowadzenie

Środowisko pracy Test nie jest tak naprawdę programem do modelowania, ale zawiera zestaw skryptów środowiska Python do wykonywania różnych testów na głównych komponentach programu FreeCAD w celu usuwania problemów. Zobacz także stronę debugowanie.

Testy można uruchamiać z wiersza poleceń, używając opcji -t lub --run-test.

Przeprowadzenie wszystkich testów:

freecad --run-test 0

Przeprowadzenie tylko niektórych testów jednostkowych, np:

freecad -t TestDraft

Jeśli test nie wymaga GUI, można go także wykonać w trybie konsoli, ustawiając dodatkowo opcję -c lub --console. Zwykle powoduje to znacznie szybszy czas uruchamiania, ponieważ GUI nie jest ładowane. Na przykład:

freecad -c -t TestPartDesignApp

Menu Narzędzia test

W każdym katalogu najwyższego poziomu w programie FreeCAD powinien znajdować się plik z testami, które można uruchomić dla danego programu lub modułu. Plik ten zwykle zaczyna się od słowa Test.

Aby uruchomić test z poziomu programu FreeCAD, należy przejść do środowiska Test Workbench, następnie Test commands → TestToolsGui → Self test → Select test name, a następnie wpisać nazwę pliku Python z testami. Na przykład dla środowiska pracy Rysunek Roboczy będzie to TestDraft, po czym należy nacisnąć przycisk Start.

Funkcje testujące

To jest lista aplikacji testowych od wersji 0.15 git 4207:

TestAPP.All

Dodanie funkcji testowania

Testy podstawowe

Dodaj funkcje testowania

Testy jednostkowe

Dodaj funkcje testowania

Dokument

Dodaj funkcje testowania

Testy Unicode

Dodaj funkcje testowania

MeshTestsApp

Dodaj funkcje testowania

Test środowiska Rysunek Roboczy

Dodaj funkcje testowania

TestSketcherApp

Dodaj funkcje testowania

TestPartApp

Dodaj funkcje testowania

TestPartDesignApp

Dodaj funkcje testowania

TestCAMApp

Testowanie środowiska pracy Path:

  • depthTestCases:
  • PathTestUtils:
  • TestDressupDogbone: Test funkcjonalności ulepszenia podcięcia w narożnikach.
  • TestHoldingTags: Test funkcjonalności ulepszenia mostki utrzymujące.
  • TestPathAdaptive: Testowanie możliwości wyboru trybu pracy adaptacyjnej.
  • TestPathCore:Test głównych funkcji środowiska pracy Path.
  • TestPathDeburr: Test ogólnej funkcjonalności operacji usuwania zadziorów.
  • TestPathGeom: Test różnych funkcji dostępnych w module PathGeom.
  • TestPathHelix: Test ogólnej funkcjonalności działania operacji Helisy.
  • TestPathLog: Przetestuj różne funkcje dostępne w module debugowania i informacji zwrotnej PathLog.
  • TestPathOpTools:
  • TestPathPreferences: Test różnych funkcji dostępnych w module PathPreferences.
  • TestPathPropertyBag:
  • TestPathSetupSheet:
  • TestPathStock:
  • TestPathThreadMilling:
  • TestPathTool:
  • TestPathToolBit:
  • TestPathToolController:
  • TestPathTooltable:
  • TestPathUtil: Test różnych funkcji dostępnych w module PathUtil.
  • TestPathVcarve: Test ogólnej funkcjonalności działania funkcji Vcarve.
  • TestPathVoronoi:

Środowiska pracy

Dodaj funkcje testowania

Menu

Dodaj funkcje testowania

Menu.MenuDeleteCases

Dodaj funkcje testowania

Menu.MenuCreateCases

Dodaj funkcje testowania

Tworzenie skryptów

Zobacz również: FreeCAD podstawy tworzenia skryptów.

Wyświetl listę wszystkich modułów testowych najwyższego poziomu

FreeCAD.__unit_test__

Należy zauważyć, że zwracane tutaj moduły testowe zależą od tego, czy dostępny jest interfejs graficzny, czy nie. Tzn. jeśli test jest wykonywany w trybie konsoli, brakuje różnych testów kończących się na "Gui".

Wykonaj określone testy

Istnieje wiele sposobów uruchamiania testów przy użyciu biblioteki unittest Python. Szkielet testowy programu FreeCAD usuwa niektóre z najczęściej występujących przypadków.

Uruchamia wszystkie testy zdefiniowane w module Python:

import Test, TestFemApp
Test.runTestsFromModule(TestFemApp)

Uruchamia wszystkie testy zdefiniowane w klasie Python:

import Test, femtest.app.test_solver_calculix
Test.runTestsFromClass(femtest.app.test_solver_calculix.TestSolverCalculix)

Przykład 1

W konsoli Pythona programu FreeCAD do uruchamiania wbudowanych testów można użyć kodu w następującym formacie. Zamień tekst w kolorze czerwonym "TestFem" w poniższym kodzie na nazwę żądanego testu modułu.

  • Na przykład użyj TestPathApp, aby uruchomić wszystkie testy jednostkowe środowiska pracy Path.
  • Moduły podrzędne są dostępne przy użyciu notacji kropkowej, na przykład TestPathApp.TestPathAdaptive, aby uruchomić tylko testy jednostkowe Adaptive w ramach większego frameworka testowego środowiska pracy Path.
  • Wiele modułów testowych lub modułów podrzędnych można połączyć, dodając kolejne wywołanie metody suite.addTest(...), tak jak w poniższym kodzie, ale z innym odniesieniem do modułu lub modułu podrzędnego.
  • Dane wyjściowe poniższego kodu będą znajdować się w panelu Widoku raportu w graficznym interfejsie użytkownika programu FreeCAD.
  • Źródło kodu jest skopiowane z postu użytkownika forum FreeCAD, sgrogana, w temacie testy jednostkowe w pythonie, z przypisaniem do użytkownika forum, wmayer.
import unittest
suite = unittest.TestSuite()
suite.addTest(unittest.defaultTestLoader.loadTestsFromName("TestFem"))
r = unittest.TextTestRunner()
r.run(suite)

Zasoby dodatkowe

Tematy na forum