Я недавно видел презентацию автора GMock , и в ней есть несколько хуков, позволяющих насмехаться над "конструктором", что, я думаю, то, что вам нужно.
например.
def mockFile = mock(File, constructor('/a/path/file.txt'))
Эта библиотека отличается от «встроенной» до «отличной», однако выглядела очень хорошо написанной, с некоторыми соображениями, касающимися видов вещей, которые вы хотите высмеивать, и, что более важно, сообщениями об ошибках, которые вы получите, когда тесты не пройдут. 1008 *
Я думаю, это то, что вы ищете. Я бы сказал, что осторожно используйте насмешку над конструктором - это может быть запах, что вы должны вводить объект Factory, но в некоторых случаях он выглядит хорошо.