Testing: Difference between revisions

From Lustre Wiki
Jump to navigation Jump to search
No edit summary
m (Updated link to Auster test framework information)
(17 intermediate revisions by 5 users not shown)
Line 1: Line 1:
The [http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/auster auster] tool is used to drive Lustre tests.
* [[Testing HOWTO | Run Lustre Tests HOWTO]]
* [[Test Descriptions | Test Framework and Descriptions of Unit, Regression, and Feature Tests]]
* [[Testing Setup To Induce Race Conditions | Testing setup to induce otherwise hard to hit race conditions]]
* [[Test Groups for Patch Testing | Test Groups for Patch Testing]]
* [[Test Configuration Variables | Test Configuration and Environment Variables]]
----
Whamcloud's testing results database for patches: [https://testing.whamcloud.com/ Maloo]


The [http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/acceptance-small.sh acceptance-small.sh] script is a wrapper around auster that runs the test group '[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/test-groups/regression regression]' unless a test is specified.
Whamcloud Wiki pages related to testing:
* [https://wiki.whamcloud.com/display/PUB/Testing+a+Lustre+filesystem Testing a Lustre filesystem]
* [https://wiki.whamcloud.com/display/PUB/Lustre+Test+Tools+Environment+Variables Lustre Test Tools Environment Variables]
* [https://wiki.whamcloud.com/display/PUB/Testing+a+Lustre+filesystem#TestingaLustrefilesystem-auster Auster]
----
wiki.old.lustre.org pages related to testing:
* [http://wiki.old.lustre.org/index.php/Acceptance_Small_%28acc-sm%29_Testing_on_Lustre Acceptance Small (acc-sm) Testing on Lustre]
* [http://wiki.old.lustre.org/index.php/Testing_Lustre_Code Testing Lustre Code]


A file system configuration file must be provided to run tests. A sample '[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/cfg/local.sh local.sh]' is distributed with the Lustre tests.
[[Category:Testing]]
 
{| class="wikitable"
|+Core Lustre Tests
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/conf-sanity.sh conf-sanity]
|A set of unit tests that verify the configuration tools, and runs Lustre with multiple different setups to ensure correct operation in unusual system configurations. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/dne_sanity.sh dne_sanity]
|A set of unit tests that exercises the DNE feature.
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/insanity.sh insanity]
|A set of tests that verify the multiple concurrent failure conditions. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/lfsck.sh lfsck]
|Tests e2fsck and lfsck to detect and fix filesystem corruption. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/lnet-selftest.sh lnet-selftest]
|Runs LNET self test on hosts defined in test configuration.
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/lustre-rsync-test.sh lustre-rsync-test]
|
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/metadata-updates.sh metadata-updates]
| A Metadata Update Test tests that metadata updates are properly completed when multiple clients create/delete files and modify the attributes of files.
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/mmp.sh mmp]
|Tests for multiple mount protection (MMP) feature.
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/ost-pools.sh ost-pools]
|A tests that exercises the OST pools feature.
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/racer.sh racer]
|A test that attempts to create race conditions.
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/recovery-small.sh recovery-small]
|A set of unit tests that verify RPC replay after communications failure. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/replay-dual.sh replay-dual]
|A set of unit tests that verify the recovery from two clients after server failure. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/replay-ost-single.sh replay-ost-single]
| A set of unit tests that verify recovery after OST failure. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/replay-single.sh replay-single]
| A set of unit tests that verify recovery after MDS failure. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/runtests runtests]
|Simple basic regression test that verifies data persistence across write, unmount, and remount. This is one of the few tests that verifies data integrity across a full filesystem shutdown and remount, unlike many tests which at most only verify the existence/size of files. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/sanity-gss.sh sanity-gss]
|Sanity test for gssapi
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/sanity-hsm.sh sanity-hsm]
|Sanity test for HSM feature.
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/sanity-krb5.sh sanity-krb5]
|Sanity test for krb5 gssapi plugin.
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/sanity-lfsck.sh sanity-lfsck]
|Sanity test for lfsck
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/sanity-quota.sh sanity-quota]
|A set of tests that verify filesystem quotas. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/sanity-scrub.sh sanity-scrub]
|
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/sanity-sec.sh sanity-sec]
|Sanity test for security features, including UID/GID mapping
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/sanity.sh sanity]
|A set of regression tests that verify operation under normal operating conditions. This tests a large number of unusual operations that have previously caused functional or data correctness issues with Lustre. Some of the tests are Lustre specific, and hook into the Lustre fault injection framework using the "lctl set_param fail_loc=X" command to activate triggers in the code to simulate unusual operating conditions that would otherwise be difficult or impossible to simulate. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|-
|[http://git.whamcloud.com/fs/lustre-release.git/blob/HEAD:/lustre/tests/sanityn.sh sanityn]
|Tests that verify operations from two clients under normal operating conditions. This is done by mounting the same filesystem twice on a single client, in order to allow a single script/program to execute and verify filesystem operations on multiple "clients" without having to be a distributed program itself.(Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|}
 
{| class="wikitable"
|+Lustre Benchmark Tests
|bonnie
|Bonnie++ benchmark for creation, reading, and deleting many small files. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|-
|dbench
|Dbench benchmark for simulating N clients to produce the filesystem load. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|-
|iozone
|Iozone benchmark for generating and measuring a variety of file operations. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|-
|obdfilter-survey
|
|-
|sgpdd-survey
|
|}
 
{| class="wikitable"
|+Auxiliary Lustre Tests
|fsx
|The file system exerciser was developed outside of Lustre and is intended to stress test unusual IO and file operations. It does buffered and mmap reads and writes with random size and offset, truncate, open, close on a file. It verifies data integrity after each step. A lustre-developed extension allows fsx to run against multiple mountpoints to verify distributed IO operation correctness. (Source [https://wiki.hpdd.intel.com/display/PUB/Auster HPDD Wiki Auster])
|}

Revision as of 06:48, 1 October 2019