JUnit shouldn't be advertised as only for "unit testing"

"'KARR, DAVID' [email protected] [junit]" <[email protected]> Mon, 6 Oct 2014 18:25:56 +0000
Newsgroups gmane.comp.java.junit.user
Message-ID <B8D164BED956C5439875951895CB4B22269BDA45@CAFRFD1MSGUSRIA.ITServices.sbc.com>
One thing I battle in my work is a misconception about what "unit testing" is, and what "JUnit" is for.  In my view, there are three kinds of automated tests: unit, integration, and acceptance.  You can easily use JUnit to write automated tests for all of these.  I often run into people who are confused by this, because they think that anything using JUnit is a unit test.  Even the first page of the JUnit web page adds to this confusion.  It says:

    "JUnit is a simple framework to write repeatable tests. It is an instance of the xUnit architecture for unit testing frameworks."

The first statement is good, but not the second one.  It would be better to change "unit testing" to "automated testing", although "repeatable tests" is ok.  I don't think there's much point in writing "repeatable tests" unless you're going to automate them.

The wikipedia page on JUnit is even worse in this regard.  No one here is technically responsible for that, but it would be a good idea to revise that (I started to look at editing that, but I'd prefer to collaborate with existing authors of the page).  It should emphasize that JUnit can and should be used for any kind of Java-based automated testing, even with acceptance testing, which could be used to test deployed packages written in any programming language.


------------------------------------
Posted by: "KARR, DAVID" <[email protected]>
------------------------------------