A.2. Basic Functionality and Self Tests
The most fundamental hardware tests are those tests, often embedded in a system's read-only-memory (ROM) or basic input/output system (BIOS), that run whenever the system reboots or powers up. The tests generally are nothing more than a basic subsystem sanity test. A good test will cover not just one subsystem, but all of them. (I have seen embedded modems be especially problematic in this area.) It's also a good idea for the test team—possibly through a "magic keystroke combination" if you want to hide this capability from users—to be able to launch these tests. A basic subsystem sanity check should be the first line of defense in isolating bad unit failures.