# crashtest tests Crash tests are used to ensure that a document can be loaded without crashing or experiencing other low-level issues that may be checked by implementation-specific tooling (e.g. leaks, asserts, or sanitizer failures). Crashtests are identified by the string `-crash` in the filename immediately before the extension, or by being in a directory called `crashtests`. Examples: - `css/css-foo/bar-crash.html` is a crash test - `css/css-foo/crashtests/bar.html` is a crash test - `css/css-foo/bar-crash-001.html` is **not** a crash test The simplest crashtest is a single HTML file with any content. The test passes if the load event is reached, and the browser finishes painting, without terminating. In some cases crashtests may need to perform work after the initial page load. In this case the test may specify a `class=test-wait` attribute on the root element. The test will not complete until that attribute is removed from the root. At the time when the test would otherwise have ended a `TestRendered` event is emitted; test authors can use this event to perform modifications that are guaranteed not to be batched with the initial paint. This matches the behaviour of [reftests](reftests). Note that crash tests **do not** need to include `testharness.js` or use any of the [testharness API](testharness-api.md) (e.g. they do not need to declare a `test(..)`).