Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Released: May 27, 2020
TestBox v4.1.0 is a minor update. Quickly update it via CommandBox
[TESTBOX-281] - request.testbox: Component ... has no accessible Member with name [$TESTID]
[TESTBOX-283] - Fix type on test results for bundlestats
[TESTBOX-286] - DebugBuffer was being removed instead of resetting to empty for getMemento
[TESTBOX-282] - Added cfml engine and version as part of the test results as properties
[TESTBOX-284] - Update all reporters so they can just build and return the report with no content type or context repsonse resets
[TESTBOX-285] - make buildReporter public in the testbox core
In this section you will find the release notes for each version we release under this major version. If you are looking for the release notes of previous major versions use the version switcher at the top left of this documentation book. Here is a breakdown of our major version releases.
In this release we have dropped support for legacy CFML engines and introduced the ability to mock data, relationships and build JSON documents.
In this release we focused on dropping engine supports for legacy CFML engines. We had a major breakthrough in introducing Code Coverage thanks to the FusionReactor folks as well. This major release came also with a new UI for all reporters and streamlining the result view ports.
This version spawned off with over 8 minor releases. We focused on taking TestBox 1 to yet a high level. Much more attention to detail and introducing modern paradigms like given-when-then. Multiple interception points, async executions and ability to chain methods.
This was our first major version for TestBox. We had completely migrated from MXUnit and it introduced BDD to the ColdFusion (CFML) world.
Released: May 24, 2021
TestBox v4.3.0 includes several new features and bug fixes. Here are the release notes and major areas of improvements.
This release has revamped the text
and mintext
reporters. Check them out by adding reporter=text
or reporter=mintext
when running your tests.
The simple reporter has been updated to add editor opening integration. Now all the tag contexts and traces are links and will open in your favorite IDE of choice. You can control the editor by using the url.editor
parameter in the URL or via your runner.
TESTBOX-299 Bug in XML-escaping in JUnit reporters
TESTBOX-298 min reporter is making assumptions that url.directory will exist
TESTBOX-297 code coverage QoQ doesn't account for nulls in sum()
TESTBOX-287 Simple Reporter doesn't show the Test that fails but the assertion in the origin
TESTBOX-305 Show the type of the actual pass into instance type expectations
TESTBOX-300 Improvement: shift test summary to the bottom of MinTextReporter
TESTBOX-295 Update the junit and antjunit reports to NOT include supported locales due to the size of the packet
TESTBOX-309 Reworked simple reporter to better visualize fail origins and tag contexts.
TESTBOX-308 Simple reporter now has editor integrations to open failure and error stacks in your editor
TESTBOX-307 New text and min text reporters to improve visualizations
TESTBOX-306 Test failures triggered in beforeAll
are counted incorrectly
Released: November 19, 2021
TestBox v4.2.x is a minor + patch update. Quickly update it via CommandBox
TESTBOX-294 - root path in test browser not enforced
TESTBOX-281 - request.testbox: Component ... has no accessible Member with name [$TESTID]
TESTBOX-290 - Turning on "Prefix serialized JSON with" in ACF causes issues in code coverage report
TESTBOX-293 - Force properties file to have properties extension and escape special chars
TESTBOX-291 - refactor usage of locks for debug utility in specs
Released: April 28, 2020
TestBox 4.0.0 is a major release. It has compatibility changes that you should be aware and lots of good features!
The major compatibility issues are the engine support removals:
Lucee 4.5 Support Dropped
Adobe ColdFusion 11 Dropped
It is easy to update, just type update testbox
and you are done!
Sometimes you need to dump something that is in the CFC you are testing or maybe an asynchronous test. The debug()
method is only accessible from your test bundle, so getting to the TestBox output utilities is not easy. We have now implemented the testing utilities into the request
scope as request.testbox
This utility struct provides you with the following methods:
This way in your code you can add them for better debugging, especially when testing async code:
We have included MockDataCFC as a dependency to TestBox 4. This will allow you to mock not only objects but data as well. You can access the mocking method via the new mockData()
method in all your specs. This feature is a life-saver when mocking APIs or data within your applications.
Let's imagine the following object graph:
I can then use this mocking DSL to define it:
More information here: https://www.forgebox.io/view/mockdatacfc
[TESTBOX-275] - Exception in beforeTests
/afterTests
not reported in a meaningful way on the ANT Junit Reporter
[TESTBOX-278] - Fix the coverage % in HTML visualizer
[TESTBOX-274] - New testbox output utilities struct: request.testbox
[TESTBOX-276] - MockdataCFC is now a first class module in TestBox
[TESTBOX-277] - New mockData() method in your base specs so you can mock any type of data
[TESTBOX-280] - Add cfconfig.json for controlling output and consistency between testing in diff engines
[TESTBOX-271] - Drop ACF11 Support
[TESTBOX-273] - Drop old mxunit decorator for ORM Transaction Decorator
2021-DEC-13
When using testSpecs
or testSuites
via non browser executions decoding is not working
Catch spec errors with no type
Lucee 5.3.8 reMatchNoCase
() change breaks expected execptions
Code Coverage in CI only reports on a single file rather than all files
Testbox refuses to update to current release
Junit reports issues with describe containing "/"
Migration to github actions
toBe{Type}
is incomplete
Full Null support
Released: June 16, 2021
TestBox v4.4.0 includes several new features and bug fixes. Here are the release notes and major areas of improvements.
Runner tries to instantiate abstract classes
Fix HTTP Status Headers Being Removed By Reporters when resetting html head
Chaining "not" matchers before regular matchers doesn't work correctly
Coverage output doesn't escape ending script tag
ConsoleReporter
fails with missing functions in assets/text
No matching function [SPACE
] found
CF error variable [THISBUNDLE
] doesn't exist when running tests
Full Null Support Some items of array can be NULL
text and min text white space management
notToBeBetween
seems to be the same as toBeBetween
Method
Comment
console()
Send output to the console
debug()
Send output to the TestBox reporter debugger
clearDebugBuffer()
Clear the debugger
print()
Send output to the ColdFusion output buffer
printLn()
Same as print() but adding a <br> separator