Blog

TestBox BDD/xUnit Testing v1.0.0 Final

Luis Majano December 18, 2013

Spread the word

Luis Majano

December 18, 2013

Spread the word


Share your thoughts

We are so tremendously happy to finally bring you the final version of: TestBox 1.0.0.  We have been working tremendously hard to get this release out before the holidays, so please enjoy it.  We have also introduced two new ref cards for TestBox, which are available now as well.  For those of you who do not know about TestBox, TestBox is a next generation testing framework for ColdFusion that is based on BDD (Behavior Driven Development) for providing a clean obvious syntax for writing tests. It contains not only a testing framework, runner, assertions and expectations library but also integrates with MockBox for mocking and stubbing. It also supports xUnit style of testing and MXUnit compatibilities.  TestBox can be downloaded from our main downloads page and it has been also integrated into the ColdBox platform as well.  The following are the release notes for this final release:

Release Notes

Bugs Squashed

  • [TESTBOX-26] - Debug stream not working for multiple bundles
  • [TESTBOX-34] - runAll button not working correctly when executing CFC directly
  • [TESTBOX-38] - HTML producing runners doesn't escape HTML output

Improvements & New Features

  • [TESTBOX-27] - Debug null support
  • [TESTBOX-29] - Directory argument can now be a simple value and it builds the necessary structs for you
  • [TESTBOX-32] - All test methods must start or end with the term, "test".
  • [TESTBOX-33] - Added injectMethod and injectProperty compatibles for MXUnit
  • [TESTBOX-41] - added styles and js inline to avoid having a web exposed mapping to /testbox
  • [TESTBOX-42] - assert methods had actual then expected when it should have been expected then actual params
  • [TESTBOX-28] - Global test runner
  • [TESTBOX-30] - MXUnit DirectoryTestSuite runner compatibility
  • [TESTBOX-31] - MXUnit compatibilty for TestSuites objects
  • [TESTBOX-35] - New Doc reporter which produces semantic HTML great for documentation and styling purposes
  • [TESTBOX-36] - New CodexWiki reporter that produces mediawiki syntax
  • [TESTBOX-37] - New TestBox test browser to browse and execute tests and directories

Features At A Glance

  • Here are a simple listing of features TestBox brings to the table:
  • BDD style testing
  • xUnit style testing
  • Testing life-cycle methods
  • MockBox integration for mocking and stubbing
  • Ability to extend and create custom test runners
  • Ability to extend and create custom test reporters
  • Extensible reporters, bundled with tons of them:
  •     JSON
  •     XML
  •     JUnit 4 XML
  •     Text (80's style)
  •     Console
  •     TAP (Test Anything Protocol)
  •     Simple HTML
  •     Min - Minimalistic Heaven
  •     Raw
  • Asynchronous testing
  • Multi-suite capabilities
  • Test skipping
  • Suite skipping
  • Dynamic skipping support via runtime executions
  • Test one or more suites exclusively
  • Test one or more tests/specs exclusively
  • Test labels and tagging
  • Clickable suite titles to filter test execution
  • Direct MXUnit replacement
  • Global Test Browser
  • Global Test Runner
  • ANT Junitreport Compatibility
  • ANT integrations
  • Much more!

Ref Cards

  
TestBox BDD Refcard       TestBox xUnit Refcard

Like with anything we do, it is completely documented in three separate guides:

  1. TestBox Complete Docs - Nerdy complete boring manual
  2. TestBox BDD Primer - Getting started with BDD
  3. TestBox xUnit Primer - Getting started with xUnit Testing

Finally, TestBox is also a direct drop-replacement for MXUnit as well.  

Add Your Comment

Recent Entries

MatchBox and WebAssembly: Running BoxLang in the Browser and at the Edge

MatchBox and WebAssembly: Running BoxLang in the Browser and at the Edge

The MatchBox open beta is live at https://boxlang.ortusbooks.com/boxlang-framework/matchbox, and it brings something genuinely new to the BoxLang ecosystem: a path into WebAssembly.

That means BoxLang code can now move into browser applications, static-site deployments, edge runtimes, and WASI-style containers - without requiring a JVM. The feature is still beta, but the core direction is already useful: write BoxLang, compile it with MatchBox, and ship the generated WASM artifact to wherever a small portable runtime makes sense.

Jacob Beers
Jacob Beers
June 04, 2026