Black Box Testing – Are Functional and Usability Testing Its Types?

functional-testingqatestingusability

I am writing about testing and I am confused about the following:

What exactly is Black-Box testing?

Are functional testing and Usability testing two different types of testing and are they types of Black Box testing?

I have to perform two different types of testing procedures. Is it ok if I do functional and Usability testing?

Best Answer

Black-box testing means that the tester is not familiar with the inner workings of the system, while white-box testing is performed by someone who knows exactly how the program works. Both has advantages and disadvantages.

Functional testing is testing whether or not the software product fulfills functional requirements, like "when loading an incorrectly formated file the program must output an error message" or "when clicking on the X, the program must close". The results of such tests are a binary "works" or "does not work".

Usability, however, is difficult to describe with functional requirements. It is hard to tell in advance if a certain user-interface would be easy to use or not. You have to build it, let people test it, and listen to their subjective feedback. What might be easy to use for one tester might be hard to use for another. That means a simple "is usable" or "is not usable" distinction is not useful in this case. The test results will usually be a lot more free-form and open to interpretation.

Also, usability testing is not useful to systematically find defects like functional testing does, because usability testers are encouraged to use the product how they would use it in the real-world and not intentionally try to perform irrational actions trying to break it. It's not like usability testers are discouraged from filing bug reports when they stumble upon any obvious bugs (they do affect usability, after all), but that's not their primary concern. They are also not expected to file bugs when the product does not behave according to the functional requirements, but the result is actually preferable.