Angular Service Unit Testing-是否伪造嵌套方法?

问题描述 投票:0回答:1

我有一个非常简单的问题。

如果我有一种这样的服务方法

generateObjectBasedOnName(name: string): SomeObject {
  if(this.isNameValid(name)) {
    const {namePart1, namePart2} = this.getNameParts(name);
    const baseObjectOne = this.getBaseObjectOne(namePart1);
    const baseObjectTwo = this.getBaseObjectTwo(namePart2);

    baseObjectOne.someDataNeededToSetHere = false;
    baseObjectTwo.someDataNeededToSetHere = true;

    return this.generateSomeObject(baseObjectOne, baseObjectTwo);
  }

  return null;
}

我应该在单元测试中使用该方法中使用的伪造方法,还是应该让它们正常执行?

感谢您的回答:)

angular unit-testing testing service mocking
1个回答
0
投票

单元测试的目的是验证特定软件单元(在您的情况下是您的服务类别)是否按设计执行。因此...

  • 您不能模拟被测单元的个别方法。
  • 您可能应该模拟注入被测单元的类的方法。
© www.soinside.com 2019 - 2024. All rights reserved.