Types of Tests
- accessibility testing
- Accessibility testing measures how well the site's interface accommodates users with disabilities; part of this issue is the fact that specialized browsers exist for disabled users (screen readers, Braille readers, etc.) which have trouble rendering some HTML constructions in meaningful ways.
- browser compatibility testing
- Please see **compatibility testing**.
- compatibility testing
- Compatibility testing measures how well pages display on different clients; for example: browsers, different browser version, different operating systems, and different machines. At issue are the different implementations of HTML by the various browser manufacturers and the different machine platform display and rendering characteristics. Also called **browser compatibility testing** and **cross-browser testing**.
- component testing
- cross-browser testing
- Please see **compatibility testing**.
- download testing
- integration testing
- Integration tests are performed when new code is added to an existing code base; for example, when a new function is added to a set of existing functions. Integration tests measure whether the new code works -- _integrates_ -- with the existing code; these tests look for data input and output, correct handling of variables, etc.
- modem testing
- Please see **download testing**.
- performance testing
- Performance testing generally describes the processes of making the web site and its server as efficient as possible, in terms of download speed, machine resource usage, and server request handling.
- production testing
- regression testing
- The term "regression testing" can be applied two ways. First, when a code problem has been fixed, a regression test runs tests to verify that the defect is in fact fixed; "Imagine finding an error, fixing it, and repeating the test that exposed the problem in the first place. This is a regresson test" (Kaner in *Testing Computer Software*). Second, regression testing is the counterpart of integration testing: when new code is added to existing code, regression testing verifies that the existing code continues to work correctly, whereas integration testing verifies that the _new_ code works as expected. regression testing can describes the process of testing new code to verify that this new code hasn't broken any old code.
- security auditing
- Security auditing refers to the testing of the site and web server configuration with an eye towards eliminating any security or access loopholes.
- smoke testing
- stress testing
- system stability testing
- testability testing
- Whenever a major change has been made to the code for a site -- like a new code drop being installed on the server(s) -- somebody must sign off on the installation or change as functioning correctly on a broad level. If the web server itself is hosed, you can't test at any finer level of granularity.
- unit testing
- usability testing
- Usability testing measures the site's interface for ease and intuitiveness of navigation.
- user acceptance testing
- User acceptance testing refers to the process, between web site owners and contractors, of setting up criteria for the formal acceptance of the web site code. Somebody must define the tests that the web site code must meet in order for the site work to be considered complete -- and somebody must execute those acceptance tests.
- user scenario testing
- user testing
- User tests are observational tests where a user or set of users are given tasks to perform using some software or product
- validation testing
- Validation is the term for verifying that the HTML code in a file meets the DTD (Document Type Definition) for any particular version of HTML. This is important because strict adherence to a DTD specification ensures the best likelihood of any file being fully supportable by a browser that follows that DTD.
[Refine your tests into testcases;
focus your tests into quality control.]