代码之家  ›  专栏  ›  技术社区  ›  GurdeepS

如何单元测试一种没有副作用的方法?

  •  0
  • GurdeepS  · 技术社区  · 14 年前

    是否可以对如下方法进行单元测试?

    void AddNumbers() {
     int i = 2+2;
    }
    

    换句话说,一种没有副作用的方法。或者像这样的方法是跳过的,而不是通常测试的?我会假设“i”通常是一个类级变量,但是这有它的缺点(尽管没有什么大的缺点)。

    谢谢

    2 回复  |  直到 14 年前
        1
  •  4
  •   Carl Manaster pakore    14 年前

    对于一个既没有副作用也没有主要作用的方法来说,没有任何价值,比如您已经介绍过的。从测试代码或生产代码中调用它不会产生任何效果。所以没有什么可测试的,也没有理由使用这种方法。

        2
  •  1
  •   Diego Sevilla    14 年前

    嗯…这种方法没有副作用,但实际上它什么也不做。没有副作用的方法imo将返回一个值而不更改任何状态(类或应用程序),这就是如何再次测试预期结果的方法。对于任何实现,您编写的方法都是不可见的。