Category Selected:

releases

Blog

TestBox 7.2 Real Browser Testing, Smarter Reports, and Agent-Ready Results

Luis Majano |  October 13, 2026

Ortus Solutions today announces the general availability of TestBox 7.2, the biggest TestBox release in years. Built on the new bx-playwright 1.0 module, BoxLang specs can now drive a real browser, assert with web-first matchers that wait until they pass, and keep the screenshots, traces and videos of every failure. Around it, TestBox gains spec retries, a Run Failed option, a rebuilt set of HTML reporters with Ask AI on every failure, and a new Agent reporter that lets AI agents read a test run at minimal token cost.

Read More

BoxLang for Sublime Text Released

Luis Majano |  October 08, 2026

Ortus Solutions today announces the official release of the BoxLang package for Sublime Text 4, the newest member of the BoxLang productivity tool suite.

Read More

BoxLang 1.18.0 Released : Every Cloud, Every Node, Every Agent

Luis Majano |  October 02, 2026

Azure joins the serverless family. Scheduled tasks become cluster-safe. And the whole platform gets documentation and skills built for developers and AI agents working side by side.

If you run a technology organization, you are being asked to do three things at once: ship faster, keep the estate you already have running, and make AI part of how your teams work. Most stacks make you choose. BoxLang 1.18 is another step toward not having to.

Read More

Assert Like You Mean It, TestBox 7.1 Part 4 : Grouped Assertions and Collection Modes

Luis Majano |  September 30, 2026

A validation spec usually checks several fields at once: name is set, email looks right, total is positive, status is one of an allowed list. Written as separate it() assertions, TestBox stops at the first failure and you fix it, rerun, and find out about the second failure. Five fields, potentially five rounds of that.

Read More

Assert Like You Mean It, TestBox 7.1 Part 5 : The Rest of the 47

Luis Majano |  September 30, 2026

The first four posts covered the headline features. This finale covers everything else in the release: eight new matchers, five new $assert methods, a class-level @skip, and a handful of fixes and behavior changes you should know about before you upgrade.

Read More

Assert Like You Mean It, TestBox 7.1 Part 3: Data Navigator

Luis Majano |  September 29, 2026

Almost every application eventually tests a nested piece of data: an API response, a JSON config file, a serialized object, module metadata. The data is a struct that contains an array that contains structs that contain more structs, and the thing you actually care about is one value buried at the bottom.

This post has two halves. First we look at BoxLang's Data Navigator, the language feature that makes nested data pleasant to work with. Then we look at the six TestBox 7.1 expectations built on top of it. If you have never used dataNavigate(), start at the top. If you already know it, skip to The six expectations.

Read More

Assert Like You Mean It, TestBox 7.1 Part 2: Range Expectations

Luis Majano |  September 24, 2026

Before exploring the 14 range matchers, let’s take a closer look at the BoxLang Range itself. Ranges go well beyond the familiar .. syntax, providing a powerful and flexible foundation for working with sequences and boundaries. Understanding how ranges work makes the matcher API much easier to use and reason about. If you are coming from a CFML background, then this will be brand new to you as ranges have never existed until Boxlang.

Read More

Assert Like You Mean It, TestBox 7.1 Part 1: Set Expectations

Luis Majano |  September 23, 2026

If you have ever tested that two collections contain "the same stuff, order doesn't matter," you already know the workaround: sort both arrays, compare them element by element, and hope nobody adds a duplicate. It works, but it isn't what you meant to write. You meant "these are the same set."

Read More

Copy of BoxLang AI 3.4 Blog Series Part 5 : Reasoning Without the Guesswork

Luis Majano |  September 15, 2026

Reasoning-capable models have been usable in BoxLang AI for a while. params passes straight through to the provider body, so params: { thinking: { type: "enabled", budget_tokens: 10000 } } for Claude, or params: { reasoning_effort: "high" } for OpenAI, already reached the API. What never worked was reading the reasoning back. It was parsed out on arrival and silently dropped. In 3.4.0, that's fixed, and it's fixed the same way for every provider.

Read More

TestBox 7.1 Released : 47 New Ways to Assert, 29 of Them BoxLang-Only

Luis Majano |  September 11, 2026

TestBox 7.1.0 is here, and it is the largest single expansion of our assertion and expectation library since TestBox was born.

Read More