【问题标题】:How to record parameter values of a method如何记录方法的参数值
【发布时间】:2020-01-20 06:12:05
【问题描述】:

我目前正在开发一个非常大的应用程序。我们现在面临着对其中的所有内容进行单元测试的问题。

我试图在执行期间记录方法和类中的所有交互,以便比较输入和输出。

是的,我知道这不是进行单元测试的正确方法,但我们需要快速完成。我们已经在使用 Mockito/PowerMockito/JUnit。

已经尝试过 AOP 和 AspectJ,但问题是必须为我们拥有的每个类创建新文件。

我正在考虑以一种拦截执行流层的方式,或者只是在 Json 文件中动态写入输入 + 依赖项值以及调用的方法和类的输出。

有什么线索吗?

【问题讨论】:

  • 1) 这不是单元测试,2) 你应该从一开始就编写可测试的代码。如果您的代码过于耦合或没有公开足够的接口,您将无法对其进行测试。使用 AspectJ 和 PowerMockito,您只是掩盖了真正的问题:不可测试(也称为不良做法)代码。
  • > “是的,我知道这不是进行单元测试的正确方法,但我们需要快速进行。” - 这是错误的方法:你做什么“快速”现在会挡住你的路,并在不久的将来减慢你的速度。

标签: java android unit-testing


【解决方案1】:

我们现在面临着对其中的所有内容进行单元测试的问题。

Unittest 测试代码,unittest 验证 公开的可观察行为是否符合您的要求。

公共可观察行为并不一定意味着public 方法,而是可从被测代码外部观察。这是返回值与依赖关系的通信

【讨论】:

    猜你喜欢
    • 2013-03-02
    • 1970-01-01
    • 2012-10-19
    • 2015-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-14
    • 2013-10-11
    相关资源
    最近更新 更多