Cob Spec is a suite of tests used to validate a web server to ensure it adheres to HTTP specifications. These acceptance tests were created using a testing suite called FitNesse. FitNesse is an application testing suite that allows you to test the business layer of your application.
Cob Spec requires Maven and JDK 8 to be installed to run correctly.
To test your server against the Cob Spec suite of tests, follow the instructions below.
git clone git@github.com:8thlight/cob_spec.git
cd cob_spec
mvn package
Start the Fitnesse server on port 9090.
java -jar fitnesse.jar -p 9090
Open your browser and go to http://localhost:9090. You should see the Cob Spec website.
To run the tests you have to change some variables.
- Navigate to the HttpTestSuite.
- Click on Edit.
- Update the paths for the User-Defined Variables.
SERVER_START_COMMAND
is the command to start your server.- Example:
java -jar /User/somebody/project/my_jar.jar
- Example:
PUBLIC_DIR
is the path to cob spec public folder.- Example:
/User/somebody/cob_spec/public/
- Example:
- Note that you have to remove the
-
at the beginning of the line in order for the User-Defined Variables to be recognized. - Click Save.
Your server jar needs to take two command line arguments.
-p
which specifies the port to listen on. Default is5000
.-d
which specifies the directory to serve files from. Default is thePUBLIC_DIR
variable.
- To run all tests, click the Suite button.
- To run the simple http request tests, first click the ResponseTestSuite link, then click the Suite button.
- To run the tests that require threading, first click the SimultaniousTestSuite link, then click the Suite button.
- To run a test individually, first click on the test link, then click the Test button.