1 # 1 # 2 # KUnit base configuration 2 # KUnit base configuration 3 # 3 # 4 4 5 menuconfig KUNIT 5 menuconfig KUNIT 6 tristate "KUnit - Enable support for u 6 tristate "KUnit - Enable support for unit tests" 7 select GLOB 7 select GLOB 8 help 8 help 9 Enables support for kernel unit test 9 Enables support for kernel unit tests (KUnit), a lightweight unit 10 testing and mocking framework for th 10 testing and mocking framework for the Linux kernel. These tests are 11 able to be run locally on a develope 11 able to be run locally on a developer's workstation without a VM or 12 special hardware when using UML. Can 12 special hardware when using UML. Can also be used on most other 13 architectures. For more information, 13 architectures. For more information, please see 14 Documentation/dev-tools/kunit/. 14 Documentation/dev-tools/kunit/. 15 15 16 if KUNIT 16 if KUNIT 17 17 18 config KUNIT_DEBUGFS 18 config KUNIT_DEBUGFS 19 bool "KUnit - Enable /sys/kernel/debug 19 bool "KUnit - Enable /sys/kernel/debug/kunit debugfs representation" if !KUNIT_ALL_TESTS 20 default KUNIT_ALL_TESTS 20 default KUNIT_ALL_TESTS 21 help 21 help 22 Enable debugfs representation for ku 22 Enable debugfs representation for kunit. Currently this consists 23 of /sys/kernel/debug/kunit/<test_sui 23 of /sys/kernel/debug/kunit/<test_suite>/results files for each 24 test suite, which allow users to see 24 test suite, which allow users to see results of the last test suite 25 run that occurred. 25 run that occurred. 26 26 27 config KUNIT_FAULT_TEST 27 config KUNIT_FAULT_TEST 28 bool "Enable KUnit tests which print B 28 bool "Enable KUnit tests which print BUG stacktraces" 29 depends on KUNIT_TEST 29 depends on KUNIT_TEST 30 depends on !UML 30 depends on !UML 31 default y 31 default y 32 help 32 help 33 Enables fault handling tests for the 33 Enables fault handling tests for the KUnit framework. These tests may 34 trigger a kernel BUG(), and the asso 34 trigger a kernel BUG(), and the associated stack trace, even when they 35 pass. If this conflicts with your te 35 pass. If this conflicts with your test infrastrcture (or is confusing 36 or annoying), they can be disabled b 36 or annoying), they can be disabled by setting this to N. 37 37 38 config KUNIT_TEST 38 config KUNIT_TEST 39 tristate "KUnit test for KUnit" if !KU 39 tristate "KUnit test for KUnit" if !KUNIT_ALL_TESTS 40 default KUNIT_ALL_TESTS 40 default KUNIT_ALL_TESTS 41 help 41 help 42 Enables the unit tests for the KUnit 42 Enables the unit tests for the KUnit test framework. These tests test 43 the KUnit test framework itself; the 43 the KUnit test framework itself; the tests are both written using 44 KUnit and test KUnit. This option sh 44 KUnit and test KUnit. This option should only be enabled for testing 45 purposes by developers interested in 45 purposes by developers interested in testing that KUnit works as 46 expected. 46 expected. 47 47 48 config KUNIT_EXAMPLE_TEST 48 config KUNIT_EXAMPLE_TEST 49 tristate "Example test for KUnit" if ! 49 tristate "Example test for KUnit" if !KUNIT_ALL_TESTS 50 default KUNIT_ALL_TESTS 50 default KUNIT_ALL_TESTS 51 help 51 help 52 Enables an example unit test that il 52 Enables an example unit test that illustrates some of the basic 53 features of KUnit. This test only ex 53 features of KUnit. This test only exists to help new users understand 54 what KUnit is and how it is used. Pl 54 what KUnit is and how it is used. Please refer to the example test 55 itself, lib/kunit/example-test.c, fo 55 itself, lib/kunit/example-test.c, for more information. This option 56 is intended for curious hackers who 56 is intended for curious hackers who would like to understand how to 57 use KUnit for kernel development. 57 use KUnit for kernel development. 58 58 59 config KUNIT_ALL_TESTS 59 config KUNIT_ALL_TESTS 60 tristate "All KUnit tests with satisfi 60 tristate "All KUnit tests with satisfied dependencies" 61 help 61 help 62 Enables all KUnit tests, if they can 62 Enables all KUnit tests, if they can be enabled. 63 KUnit tests run during boot and outp 63 KUnit tests run during boot and output the results to the debug log 64 in TAP format (http://testanything.o 64 in TAP format (http://testanything.org/). Only useful for kernel devs 65 running the KUnit test harness, and 65 running the KUnit test harness, and not intended for inclusion into a 66 production build. 66 production build. 67 67 68 For more information on KUnit and un 68 For more information on KUnit and unit tests in general please refer 69 to the KUnit documentation in Docume 69 to the KUnit documentation in Documentation/dev-tools/kunit/. 70 70 71 If unsure, say N. 71 If unsure, say N. 72 72 73 config KUNIT_DEFAULT_ENABLED 73 config KUNIT_DEFAULT_ENABLED 74 bool "Default value of kunit.enable" 74 bool "Default value of kunit.enable" 75 default y 75 default y 76 help 76 help 77 Sets the default value of kunit.enab 77 Sets the default value of kunit.enable. If set to N then KUnit 78 tests will not execute unless kunit. 78 tests will not execute unless kunit.enable=1 is passed to the 79 kernel command line. 79 kernel command line. 80 80 81 In most cases this should be left as 81 In most cases this should be left as Y. Only if additional opt-in 82 behavior is needed should this be se 82 behavior is needed should this be set to N. 83 83 84 endif # KUNIT 84 endif # KUNIT
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.