如何为angular 9中的多个if else语句编写测试用例

问题描述

我正在尝试为以下方法编写测试用例,但我不知道如何编写测试用例来覆盖代码

getSectionName(sectionId: string) {
    if (sectionId === sectionIds.Homepage) {
      return Section.Homepage;
    } else Iif (sectionId === sectionIds.ProductList) {
      return Section.aboutUs;
    } else {
      return Section.Homepage
    }
}

如何实现这个方法的测试用例?

解决方法

直接调用组件函数并检查函数结果可以作为测试用例。 Acutaly我也简化了你的功能。

getSectionName(sectionId: string) {
   if (sectionId === sectionIds.ProductList) {
      return Section.aboutUs;
    }
    return Section.Homepage    
}

it(
    "Verify ProductList result",waitForAsync(() => {
        const result = component.getSectionName(sectionIds.ProductList);
        expect(result).toBe(Section.aboutUs);       
    })
);