Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

This has been bothering me for a while. Security, performance tests etc. are all done typically using the black box approach. But these are nonfunctional,while black box is called functional testing.

Is it because it judges the function and it is just a naming or there is an inconsistency?

Software Engineering by Salleh
Software Engineering and Testing by Gupta, Tayal
Software Engineering by A.A.Puntambekar
Software Testing: a Practical Approach by Sandeep Desai, Abhishek Srivastava

share|improve this question
References? I have never heard before that "functional testing" is an exclusive alias for "black box testing". – Doc Brown Mar 13 '13 at 9:53
SW testing and Q by Naik, Tripathy. Software Engineering by Salleh, Software Engineering and Testing by Gupta,Tayal. Software Engineering by A.A.Puntambekar.Software Testing : a Practical Approach by Sandeep Desai,Abhishek Srivastava – user970696 Mar 13 '13 at 10:05
@user970996: I guess you get downvotes (not from me) because your original question was not easy to understand, and even now it seems like you expect others to get all that books to understand your question. A short cite (see below) would have made your question clearer for the typical reader. – Doc Brown Mar 13 '13 at 10:41
functional testing = testing of the functionality = testing how the software performs without investigating/having any idea of/ the source code = black box testing – superM Mar 13 '13 at 11:33
my guess is that you're confusing "functional requirement" (such as security and performance requirements) with "functional testing" (high level testing of program functionality, which may include how the program reacts over edge-cases data, under load, etc). They are not related at all even though they both use the term "functional". – Lie Ryan Mar 13 '13 at 13:12
up vote 2 down vote accepted

Ok, by a quick google search I found a cite from your first reference:

white box testing techniques are also called structural testing techniques, whereas black-box testing techniques are also called functional testing techniques

I guess you are referring to that. To my understanding the term "functional testing" is used here in a very broad meaning, just to emphasize the difference to "structural testing". From this point of view, "performance" or "security" are also "functions" of a program, since they can be observed by a black-box execution of the program, without knowing details of the source code.

Using the term "functional" in opposition to "non-functional", however, narrows the meaning down to "core functions" or "domain functions". This is a quite different point of view. So if someone speaks about "functional testing", you have to be careful what he might mean and interpret this in relation to the current context.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.