I've been following hurl for sometime. Where it shines from others is that it has its own DSL For testing. It is not only to make http request, but to assert response and capture data. Having said that, and hoping the maintainer is reading this: please please make it such that assertion can passed to an external script. Why am I asking this? Because, an example, you cannot still assert that a property in a collection of items all have the same value (ex.: all titles should be XXX without using nth selector or make it possible to do nth = * ). And proving a DSL for all use cases is kinda huge effort. Would be great to pass the the output of jsonpath to jq for example and if that returns true, the test pass.
The DSL would slowly creep to a Turing complete general purpose language so I agree that invoking external scripts seems reasonable. The could be quite a can of worms though because it makes the files less hermetic
what if the script was inline in the DSL? e.g. some syntax for opening a script “block”, with an annotation of the command to exec or pipe the script into