【发布时间】:2016-10-10 21:22:07
【问题描述】:
我是在 jasmine 中编写单元测试用例的新手..我对在单元测试用例中加载模块有疑问.. 我的带有 AngularJS 的完整 REST 应用程序具有相同的模块名称但具有不同的控制器、指令和工厂服务的场景。如果我只是通过添加来加载模块
module("module name") ---- 这是否意味着我还加载了所有的控制器、工厂服务和指令?
如果我的模块有 100 个工厂服务,那么是必须模拟 BeforeEach 块中的所有服务还是只模拟正在为其编写单元测试用例的服务??
如果正在为其编写单元测试用例的工厂服务依赖于其他服务,那么这些服务是否也应该在 beforeEach() 块中被模拟,并监视其所有依赖的服务方法??
如果要模拟的工厂服务存在于控制器中,那么应该先模拟控制器然后模拟工厂服务???
是否有特定的方法可以监视具有参数的方法,或者无论方法有多少参数,使用带有方法名称的 createSpy() 的传统方法都可以解决问题??
如果指令有一个指向 HTML 文件的模板 URL..在我加载模块时也会加载吗?
如果指令需要 HTML 文件作为模板 URL..如何模拟模板 URL?防止它尝试输出 HTML 页面
【问题讨论】:
-
有人能解开我的疑虑吗
标签: jasmine karma-jasmine