我实际上已经尝试过手动执行此操作。在每个方法的开头和每次返回之前,调用我自己的实现方法。使用序列化来存储输入输出,还可以用于非原始对象的深层比较。但是,我尝试使用的程序涉及许多间接输入和输出,例如类实例变量,超类中的变量等。我通过反射来处理此问题。
但是由于所有的序列化和反序列化,它变得太耗时了,除了记录和测试之外,我还需要访问输入和输出,因为我想基于输入值进行一些测试选择。
有人这样做吗? 我研究了Chronon,但是它以非常复杂的方式实现了此功能,因此我无法系统地访问所有记录的输入和输出信息。
我也尝试研究剖析,aspectj,但是我迷路了,如果有人对此有更好的了解,我不想花太多时间阅读各种东西。