UnitTest-检查方法的行为或结果?

时间:2018-11-07 16:54:24

标签: php phpunit

我是UnitTest的新手,有时不确定我的UnitTest是什么 应该测试。

以下是一个非常简化的示例

class MappingHelper
{
   private $mappingRepository;
   public function __construct(MappingRepository $mappingRepository)
   {
      $this->$mappingRepository = $mappingRepository
   }

  public function getMappingForCode(string $code)
  {
     return $this->mappingRepository->getMappingForCode($code);
  } 
}

因此,这基本上只是包装方法。 我应该检查行为或方法的结果吗?

结果
那将是更多的努力,并且某种程度上也是多余的,因为我已经 在UnitTest for MappingRepository本身中测试功能。

行为
对我来说似乎更有用的是仅检查
的方法'getValueForCode' $ this-> mappingRepository使用参数$ code调用过一次。

该解决方案的一个问题是依赖关系是最终的,并且没有接口, 所以我无法模拟它,因此没有机会检查该方法是否被调用。

我当然可以删除决赛,但我不希望扩展该类。 另外,因为没有其他实现,所以不需要接口。

因此,我将仅为了能够创建UnitTest而进行此更改,这感觉不对。

0 个答案:

没有答案
相关问题