我最近开始为我正在研究的角度应用程序编写单元测试。 有一点我不确定,在Angular的上下文中,单元测试和集成测试之间存在差异。
假设我有一个控制器来测试哪个服务器取决于另一个(非角度)服务,我应该创建一个服务模拟器,或者尽可能尝试使用真实服务。
如果我注入服务本身并不意味着我正在创建集成测试而不是单元测试?
我问的是,因为我的同事们一直在编写注入真实服务的测试,并且仍称他们为单元测试。它会耗费大量时间,尤其是当你必须在测试中调试注入服务的错误时,每个服务依赖于其他5个服务......
答案 0 :(得分:4)
单元测试的目的是在与环境和其他单元隔离的情况下验证基础单元的行为。基本上,如果您的被测系统或测试本身与外部系统交互,则这不是真正的单元测试。
几个月前,我写了一篇关于这个主题的article。查看更多信息。