Currently, a test may be unconditionally failed by calling the Error()/Errorf() functions. These are limited to accepting a (required) message and args. This does not provide for a fatal failure (halting execution of the current test).
A more flexible mechanism is required.