LTP User Guidelines =================== For compiling, installing and running the tests see `README.md`. For running LTP network tests see `testcases/network/README.md`. 1. Library environment variables -------------------------------- |============================================================================== | 'KCONFIG_PATH' | The path to the kernel config file, (if not set, it tries the usual paths '/boot/config-RELEASE' or '/proc/config.gz'). | 'KCONFIG_SKIP_CHECK' | Skip kernel config check if variable set (not set by default). | 'LTPROOT' | Prefix for installed LTP. **Should be always set** as some tests need it for path to test data files ('LTP_DATAROOT'). LTP is by default installed into '/opt/ltp'. | 'LTP_COLORIZE_OUTPUT' | By default LTP colorizes it's output unless it's redirected to a pipe or file. Force colorized output behaviour: 'y' or '1': always colorize, 'n' or '0': never colorize. | 'LTP_DEV' | Path to the block device to be used (C: '.needs_device = 1', shell: 'TST_NEEDS_DEVICE=1'). | 'LTP_SINGLE_FS_TYPE' | Testing only - specifies filesystem instead all supported (for tests with '.all_filesystems'). | 'LTP_DEV_FS_TYPE' | Filesystem used for testing (default: 'ext2'). | 'LTP_TIMEOUT_MUL' | Multiplies timeout, must be number >= 0.1 (> 1 is useful for slow machines to avoid unexpected timeout). Variable is also used in shell tests, but ceiled to int. | 'LTP_RUNTIME_MUL' | Multiplies maximal test iteration runtime. Tests that run for more than a second or two are capped on runtime. You can scale the default runtime both up and down with this multiplier. NOTE: Not yet implemented in shell API. | 'LTP_VIRT_OVERRIDE' | Overrides virtual machine detection in the test library. Setting it to empty string tell the library that system is not a virtual machine. Other possible values are 'kvm', 'xen', 'zvm' and 'microsoft' that describe different types supervisors. | 'PATH' | It's required to addjust path: `PATH="$PATH:$LTPROOT/testcases/bin"` | 'TMPDIR' | Base directory for template directory (C: '.needs_tmpdir = 1' and others, which imply it, shell: 'TST_NEEDS_TMPDIR=1'). Must be an absolute path (default: '/tmp'). | 'TST_NO_CLEANUP' | Disable running test cleanup (defined in 'TST_CLEANUP'). |============================================================================== 2. Test execution time and timeout ---------------------------------- The limit on how long a test can run does compose of two parts max_runtime and timeout. The limit does apply to a single test variant, that means for example that tests that run for all available filesystems will apply this limit for a single filesystem only. The max_runtime is a cap on how long the run() function can take, for most testcases this part is set to zero. For tests that do run for more than a second or two the max_runtime has to be defined and the run() function has to check actively how much runtime is left. Test runtime can be scaled up and down with 'LTP_RUNTIME_MUL' environment variable or set on a commandline by the '-I' parameter. Hoewever be vary that setting the runtime too low will cause long running tests to exit prematurely possibly before the have a chance actually test anyting. The timeout part is a limit for the test setup and cleanup and also safety margin for the runtime accounting. It's currently set to 30 seconds but may change later. If your target machine is too slow it can be scaled up with the 'LTP_TIMEOUT_MUL' environment variable.