diff --git a/.github/workflows/busted.yml b/.github/workflows/busted.yml
index d86540f..4dfb410 100644
--- a/.github/workflows/busted.yml
+++ b/.github/workflows/busted.yml
@@ -53,7 +53,7 @@ jobs:
 
       - name: Run ‘busted’ (dogfood)
         # disable project-local path prefixes to force use of system installation
-        run: busted --coverage --lpath="" --cpath="" -Xoutput --color
+        run: busted --coverage --lpath="" --cpath="" --output=gtest -Xoutput --color
 
       - name: Report test coverage
         if: ${{ success() && github.repository == 'lunarmodules/busted' }}
diff --git a/README.md b/README.md
index 0773dd7..35bda0a 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,7 @@ busted
 
 [![Join the chat at https://gitter.im/lunarmodules/busted](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/lunarmodules/busted?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
 
-[![Busted](https://img.shields.io/github/workflow/status/lunarmodules/busted/Busted?label=Busted=Lua)](https://github.com/lunarmodules/busted/actions?workflow=Busted)
+[![Busted](https://img.shields.io/github/workflow/status/lunarmodules/busted/Busted?label=Busted&logo=Lua)](https://github.com/lunarmodules/busted/actions?workflow=Busted)
 [![Luacheck](https://img.shields.io/github/workflow/status/lunarmodules/busted/Luacheck?label=Luacheck&logo=Lua)](https://github.com/lunarmodules/busted/actions?workflow=Luacheck)
 [![GitHub tag (latest SemVer)](https://img.shields.io/github/v/tag/lunarmodules/busted?label=Tag&logo=GitHub)](https://github.com/lunarmodules/busted/releases)
 [![Luarocks](https://img.shields.io/luarocks/v/lunarmodules/busted?label=Luarocks&logo=Lua)](https://luarocks.org/modules/lunarmodules/busted)
diff --git a/busted/modules/helper_loader.lua b/busted/modules/helper_loader.lua
index 300eb16..e7a45f3 100644
--- a/busted/modules/helper_loader.lua
+++ b/busted/modules/helper_loader.lua
@@ -6,14 +6,21 @@ return function()
   local loadHelper = function(busted, helper, options)
     local old_arg = _G.arg
     local success, err = pcall(function()
+      local fn
+
       utils.copy_interpreter_args(options.arguments)
       _G.arg = options.arguments
+
       if helper:match('%.lua$') then
-        dofile(path.normpath(helper))
+        fn = dofile(path.normpath(helper))
       elseif hasMoon and helper:match('%.moon$') then
-        moonscript.dofile(path.normpath(helper))
+        fn = moonscript.dofile(path.normpath(helper))
       else
-        require(helper)
+        fn = require(helper)
+      end
+
+      if type(fn) == 'function' then
+        assert(fn(busted, helper, options))
       end
     end)
 
diff --git a/debian/changelog b/debian/changelog
index 28ffe98..8eac014 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+lua-busted (2.1.1+git20220829.1.ad8abbe+ds-1) UNRELEASED; urgency=low
+
+  * New upstream snapshot.
+
+ -- Debian Janitor <janitor@jelmer.uk>  Sat, 03 Sep 2022 07:39:45 -0000
+
 lua-busted (2.1.1-1) unstable; urgency=medium
 
   * New upstream release