Blog

Luis Majano

March 11, 2016

Spread the word


Share your thoughts

Team TestBox is proud to bring our latest release to the masses, v2.3.0.  This release includes some minor fixes and a plethora of cool new features, mostly thanks to Mr Eric Peterson and our Slack community. It has been incredible to get so much community support in this project and so many pull requests and even to our documentation. So thank you so much for supporting and believing in us. This release is for you!

Getting Started

All the docs have been updated in our documentation book and check out the what's new page for an in-depth overview of this release.

You can also very easily get started or update your project with TestBox via CommandBox CLI for ColdFusion (CFML):


# install testbox
box install testbox

# update testbox
box update testbox

#what you thought there was more?

Major Features

This is a big minor release including some great new functionality like life-cycle annotations, complete nested aroundEach() abilities, line number problem identifications, Travis support, new $throws() expressive method for mocking exceptions, and tons of other little updates to make your testing easier and pleasurable. Enjoy!

Release Notes

Here are all the tickets for this release

Bugs Squashed

  • [TESTBOX-140] - Allow Mocking of an Interface that implements another interface

New Features

  • [TESTBOX-158] - Give line number when an expectation fails or errors out
  • [TESTBOX-150] - new expressive exception throwing goodness: $throws()
  • [TESTBOX-161] - Recursively call parent `aroundEach` functions in reverse tree format
  • [TESTBOX-162] - Add annotation hooks for lifecycle methods
  • [TESTBOX-163] - remove the TestBox tag contexts from the beginning of Failure Origins
  • [TESTBOX-164] - Make test harness easier for development via CommandBox
  • [TESTBOX-165] - Add travis build support for supporting pull requests and test matrixes
  • [TESTBOX-166] - Update API Docs to leverage DocBox instead

Improvements

  • [TESTBOX-160] - Explicitly place the instance "scope" in the variables scope due to lucee full cascade support
  • [TESTBOX-167] - update string buffers to string builders

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
One Language, Every Runtime: BoxLang Expands Beyond the Server

One Language, Every Runtime: BoxLang Expands Beyond the Server

Discover how BoxLang’s multi-runtime architecture helps developers build beyond the server with support for serverless functions, desktop applications, CI/CD workflows, Java integrations, containers, runtime management, and more.

Maria Jose Herrera
Maria Jose Herrera
June 04, 2026