16 Jun Black Box Testing
Black Box Testing is a form of manual testing. As the name implies, the black box is a mystery. We can’t see inside. We don’t know what the box contains or how it processes data that enters it.
We only care about one thing: what comes out of the black box.
This type of testing is done via a Graphical User Interface (GUI, a.k.a screen). Data is entered. It is manipulated by some unknown process, and a result is returned.
As a tester, your job is to verify that the result is expected and conforms to user requirements. This is called a “positive test”.
In addition to positive testing, you’ll perform “negative tests” as well.
Think of negative testing as expecting the unexpected.
Users won’t always enter the expected information. They don’t know or care what your software expects as input, they just want to get a result.
They may make entries, accidentally or on purpose, that are invalid and should be rejected (ex: letters in an amount field). These negative conditions must be accounted for in your test scenarios.
When performing black box tests, whether positive or negative, your only concern is the result returned via the “black box”. Did I get the expected result?
As mentioned in the page on Manual Testing, here are some basic steps in the Black Box testing process:
- verify correctness of displays (titles, graphics, data in correct format)
- verify navigation (page to page, field to field)
- verify field values (correct spelling of text fields, correct formatting/calculations of numerical fields)
- verify that the application follows user specifications
As a black box tester, you are required to check all program functions by “playing user”. You will perform the actions that the user would during normal, everyday use of the software. Using this methodology, you will likely uncover errors that the user might encounter.
In addition to testing with the expected user actions (the positive tests mentioned above), a complete black box test suite must also include negative tests and other unexpected actions.
For example, using a dollar amount field as an example:
- you would input numbers and ensure that they were accepted and formatted properly (i.e., dollars and cents format)
- you would enter non-numeric characters (letters, special characters) and verify that they were rejected as invalid input
- you would test the limits of the field (can you enter negative dollar amounts? is there a lower and upper dollar amount limit?)
When Black Box Testing, you will “play user” to ensure that the software produces the expected result for the user, and in addition, as a professional software tester, you must venture out of the Black Box and test for conditions that the user may not encounter in normal system use.
By fully testing for all possible conditions, you’ll help to ensure delivery of a software product of the highest possible quality, which is your primary mission as a professional software tester.