Depends upon how one goes about it. I prefer to use Test::MockModule when I have something external I don't want to run or I have arguments I want to capture. In this case, it's reasonably to use it in addition to running the Data::Record code. However, that means that your mocked method would then be behaving in a way that it's impossible for the code to behave. I'm not sure how that's a win over providing asserts.