我试图测试服务,但我不知道如何测试内部循环。是否可以使用host.lenght === 1以不同于返回host.length = 1的模拟URL的方式测试案例。我是否必须调用我在服务中的所有代码来测试它?另外如何测试isNaN? 这是我的代码:
if (host.length === 1 || !isNaN(host[host.length - 1])) {
name = a.hostname;
} else {
if (host[0] === "www") {
slice = 1;
}
name = host.slice(slice, host.length - 1).reverse().join(" ");
}
答案 0 :(得分:0)
在这种情况下,只使用一个可以提供此行为的URL看起来最简单。在我看来,这也是一个更好的测试,因为它实际上会测试代码的意图,而不仅仅是确保调用某些方法。毕竟,编写这段代码是为了应对不同类型的URL,为什么不用它来测试它们呢?
您已经对此网址进行了测试:'http://angular.com/about'
。对于您正在讨论的案例,您可以使用'http://angular/about'
然后使用'http://www.angular.com/about'
来测试删除www.
部分的代码。