Stormpath Framework TCK
The Stormpath Framework TCK (Test Compatibility Kit) is a collection of HTTP-based integration tests that ensure a Stormpath web framework integration supports all Stormpath Framework Specification behavior. The TCK uses only HTTP(S) requests to ensure that they may execute against a web application written in any programming language that uses any of the various Stormpath integrations
This project is mostly used by the Stormpath SDK teams to ensure stability and consistent behavior for our customers, especially those that use Stormpath across multiple programming languages. And for our own development sanity :) Comments, suggestions and/or contributions from the Open Source community are most welcome.
Getting Started
-
If you haven't installed Maven already:
brew install maven
-
Clone the project:
git clone git@github.com:stormpath/stormpath-framework-tck.git
Running tests
Fire up your web application under test. For example, a Java project might do this:
mvn jetty:run
And a node.js project might do this:
node server.js
Once your web app is running, you can run the TCK against this webapp:
cd stormpath-framework-tck
mvn clean verify
This will run all tests against the targeted webapp.
To run a single suite, name it using the -Dtest flag:
mvn clean verify -Dtest=LogoutIT
Using Maven Profiles to Customize TCK Behavior
The TCK will attempt to interact with a web application accessible by default via http://localhost:8080
. You can
tell the TCK which type of application you are using by using a
Maven Profile by specifying the -P
flag:
mvn clean verify -Pexpress
And this will assume a default base URI of http://localhost:3000
(notice the changed port) since this is common for
node.js environments.
The currently supported profile names are:
express
java
laravel
Additional profile names can be added if different language environments require custom settings.
Test output as HTML
Besides viewing the output in the console, there's a nicer HTML format so you can view it through your browser:
open target/surefire-reports/index.html