Releases: studio-b12/goat
v1.5.0-beta.1
New Features
- Added
[FormUrlEncoded]block
You can now pass body key-value pairs asx-www-form-urlencodedbody using the[FormUrlEncoded]block. - Added the
--log-fileparameter to additionally log to a file
With the--log-fileparameter, you can now write the output log additionally to StdOut to a file.
Minor Changes and Bug Fixes
v1.4.0
New Features
- Added graceful shutdown [#69]
When canceling execution of goat, i.e. with Ctrl+C, goat will skip all subsequent test cases after finishing the currently running one and will still continue on executing teardown steps. This ensures integrity and consistency of your test setup, even when canceling the current execution.
Minor Changes and Bug Fixes
--retry-failednow uses absolute paths so that it can be executed in any directory.- Fixed a bug that prevented executing Goatfiles via absolute paths.
- Fixed request formatting in the log output.
ETC
- Goat now has an official logo (like every cool and fancy open-source project has)!

© 2025 Ringo Hoffmann - Licenced under the Creative Commons 4.0 Attribution-Sharealike.
v1.3.0
New Features
-
Added raw data identifier
$to directly use raw data from a response as request body. See the example in the
documentation for more information. [#66, #67] -
Added a new flag
--retry-failed(or-Rfor short). When a batch execution fails, failed files are now saved to a
temporary file. After that, goat can be executed again with only the flag which will re-run only the failed files.
v1.3.0-beta.1
New Features
-
Added raw data identifier
$to directly use raw data from a response as request body. See the example in the
documentation for more information. [#66, #67] -
Added a new flag
--retry-failed(or-Rfor short). When a batch execution fails, failed files are now saved to a
temporary file. After that, goat can be executed again with only the flag which will re-run only the failed files.
v1.2.0
New Features
-
Added a new request block
[FormData], which enables to specifymultipart/form-datarequest payloads. Here you can read the documentation. [#55] -
Added a new request option
followredirects. This istrueby default, but can be set tofalseif redirects should not be followed transparently. [#61] -
Added a new script builtin
assert_eq, where you can pass two values which are compared and output for better error clarification. -
Added a new script builtin
jq, to perform JQ commands on any object in script blocks.
Minor Changes and Bug Fixes
- Fixed an issue when parsing file descriptors on Windows systems.
v1.2.0-beta.3
New Features
-
Added a new request block
[FormData], which enables to specifymultipart/form-datarequest payloads. Here you can read the documentation. [#55] -
Added a new request option
followredirects. This istrueby default, but can be set tofalseif redirects should not be followed transparently. [#61] -
Added a new script builtin
assert_eq, where you can pass two values which are compared and output for better error clarification. -
Added a new script builtin
jq, to perform JQ commands on any object in script blocks.
Minor Changes and Bug Fixes
- Fixed an issue when parsing file descriptors on Windows systems.
v1.2.0-beta.2
New Features
-
Added a new request block
[FormData], which enables to specifymultipart/form-datarequest payloads. Here you can read the documentation. [#55] -
Added a new request option
followredirects. This istrueby default, but can be set tofalseif redirects should not be followed transparently. [#61] -
Added a new script builtin
assert_eq, where you can pass two values which are compared and output for better error clarification.
Minor Changes and Bug Fixes
- Fixed an issue when parsing file descriptors on Windows systems.
v1.2.0-beta.1
New Features
-
Added a new request block
[FormData], which enables to specifymultipart/form-datarequest payloads. Here you can read the documentation. [#55] -
Added a new request option
followredirects. This istrueby default, but can be set tofalseif redirects should not be followed transparently. [#61]
Minor Changes and Bug Fixes
- Fixed an issue when parsing file descriptors on Windows systems.
v1.1.0
New Features
-
Profiles have been implemented for a more central control on commonly used parameters across projects.
See the documentation for all details. -
A new flag
--reduced-errors(or-Rfor short) has been added to hide template errors in teardown steps.
This can be useful to reduce the noise of template errors due to missing variables in teardown steps when tests fail. -
Added a new builtin templating function
formatTimestampto
format dates. Also thetimestampbuiltin
has been updated to also accept format names likeformatTimestamp.
Minor Changes and Bug Fixes
-
response.BodyRawis now represented as a UTF-8 encoded string when printed in the[Script]section instead of listing
the list of byte values. It is still an array of bytes though, so you can operate on it as expected. -
Fixed a bug where
noabortandalwaysabortoptions had no effect on teardown steps. -
The
jsontemplate builtin now accepts an additional parameter for indentation.
Code Base
- The Goatfile parser does now produce an intermediate
ASTstructure instead of theGoatfiledirectly. This should allow
to build tooling around Goatfiles using the provided parser implementation more easily (i.e. like an auto-formatter or LSP).
Feel free to discover the new implementation here. [#57]
v1.1.0-beta.2
New Features
-
Profiles have been implemented for a more central control on commonly used parameters across projects.
See the documentation for all details. -
A new flag
--reduced-errors(or-Rfor short) has been added to hide template errors in teardown steps.
This can be useful to reduce the noise of template errors due to missing variables in teardown steps when tests fail.
Minor Changes and Bug Fixes
-
response.BodyRawis now represented as a UTF-8 encoded string when printed in the[Script]section instead of listing
the list of byte values. It is still an array of bytes though, so you can operate on it as expected. -
Fixed a bug where
noabortandalwaysabortoptions had no effect on teardown steps.
Code Base
- The Goatfile parser does now produce an intermediate
ASTstructure instead of theGoatfiledirectly. This should allow
to build tooling around Goatfiles using the provided parser implementation more easily (i.e. like an auto-formatter or LSP).
Feel free to discover the new implementation here. [#57]