我发现单元测试是针对组件类的,集成测试是针对组件类和模板的。
但是我没有发现端到端测试与这些测试有什么不同,我如何在Angular中实现这些,这是这些类型的测试的原理和范例。
答案 0 :(得分:1)
这些测试类型并没有因为您使用Angular而有所不同。 无论使用哪种框架,它们的用法几乎相同。
我会尽力解释
单位
是仅测试某个隔离的代码单元
示例:
var sum = function(firstVal, secondVal){
return firstVal + secondVal;
}
在这里,我们可以使用单元测试来验证该代码是否确实将firstVal和secondVal相加。
expect(sum(3,5)).toEqual(8);
集成
是在测试集成时,您通常会与某些代码交互但无法控制
示例:
假设您在应用程序中使用了第三方api,它公开了一个GET方法,该方法计算两个值的总和。 在这里,我们可以使用集成测试来验证我们无法控制的外部api是否确实能够正常运行。
request("http://someapi/sum?firstVal=3&secondVal=5", function(error, response){
expect(response).toBe(8);
});
端到端
是从一端到另一端测试整个应用程序的时间。
示例: 首先要成为用户,然后从Web UI使用该应用程序。然后,验证已正确执行由webUI触发的所有操作。例如,如果您从gui创建订单,请验证该订单是否一直创建到数据库或第三方集成。