This is the example project referred to in the
Struts 2 documentation, Unit Testing tutorial.
See:  http://struts.apache.org.

To build the application's war file run mvn clean package
from the project's root folder.

As part of packaging the war file, Maven will run the unit test.

The war file is created in the target sub-folder.

Copy the war file to your Servlet container (e.g. Tomcat, GlassFish) and 
then startup the Servlet container.

In a web browser go to:  http://localhost:8080/unit_testing/index.action.

You should see a web page with Welcome to Struts 2!

