A User Centered Resource Site

Alpha Testing

Internal Company Testing

The next component of usability testing is called Alpha testing, which precedes the previous Daily Build and Smoke Test, content check, and user acceptance tests. Marc Hamilton, a person who has written numerous technical articles on Java technology and the Internet, and is the author of the book Software Development, Building Reliable Systems, has written, "Alpha testing refers to internal company testing of an application prior to its external release." Any code with bugs in them are found and eliminated through this Alpha test process, however it's done internally. A large company can have an Alpha test occur within the company and save them an enormous amount of money this way. Imagine if you only had yourself to check a 100+ Web site, wouldn't that take a considerable amount of time? That's why when big companies with over 100+ employees do the Alpha test together; they can find and get all of those bugs in no time.

Done Daily

Alpha testing is like smoke testing, but different in only one aspect. It's not done on a daily basis to see if the 'smoke' brought out the bugs. Instead it's done only twice before the release date. Alpha testing is split into two segments because of this test split, creating the whole of the test. The first segment is White Box testing and the other segment is Black Box testing.

White Box Testing

White box testing is sometimes referred to as, clear-box, glass-box, or structural. Mark Hamilton describes white box testing as, "...peeking 'inside the box,' or software component, and focuses specifically on using internal knowledge of the software to guide the selection of test data." This means that the testers are allowed to know the inner workings of the Web site and use this knowledge to find out where this bug is located. However, Black box is different from White Box testing by this one main reason, testers are not allowed to know the internal code. As Mark Hamilton further explains, " Black-box test design treats the software system as a "black box," and doesn't explicitly use knowledge of the internal software structure."
References