Test Harness
Last updated
Was this helpful?
Last updated
Was this helpful?
Every ColdBox application template comes with a nice test harness inside of a tests
folder.
Here is a breakdown of what it contains:
Application.cfc
- A unique application file for your test harness. It should mimic exactly the one in your root application folder
resources
- Some basic testing resources or any of your own testing resources
results
- Where automated results are archived
runner.cfm
- The HTML runner for your test bundles
specs
- Where you will be writing your testing bundle specs for integration testing, unit testing and module testing.
test.xml
- Your ANT runner
The Application.cfc
for your tests is extremly important as it should mimic your applications real Application.cfc
.
component{
// APPLICATION CFC PROPERTIES
this.name = "ColdBoxTestingSuite" & hash(getCurrentTemplatePath());
this.sessionManagement = true;
this.sessionTimeout = createTimeSpan( 0, 0, 15, 0 );
this.applicationTimeout = createTimeSpan( 0, 0, 15, 0 );
this.setClientCookies = true;
// Create testing mapping
this.mappings[ "/tests" ] = getDirectoryFromPath( getCurrentTemplatePath() );
// Map back to its root
rootPath = REReplaceNoCase( this.mappings[ "/tests" ], "tests(\\|/)", "" );
this.mappings["/root"] = rootPath;
public void function onRequestEnd() {
structDelete( application, "cbController" );
structDelete( application, "wirebox" );
}
}
Please note that we provide already a mapping to your root application via /root
. We would recommend you add any ORM specs here or any other mappings here as well.
Tip: Make sure all the same settings and configs from your root Application.cfc
are replicated in your tests Application.cfc