Это просто, используя метаклассирование Groovy. В этом примере я скажу, что один из классов вашего домена - Foo.
void testFooThrowsException(){
def fooInstance = new Foo()
fooInstance.metaClass.methodToTest = {arg1, arg2->
throw new CustomException("I'm an exception")
}
shouldFail CustomException, {fooInstance.methodToTest("val1", "val2")}
}
После того, как вы изменили метакласс экземпляра, этот экземпляр будет иметь измененное поведение для его полного жизненного цикла. Подробнее о метаклассировании на сайте Groovy. Это одна из самых крутых частей Groovy, IMO.