我正在研究一个尚未庞大的角应用程序.我遇到了业力单元测试的问题.总而言之,我使用带有requirej的角度.如果我将模板嵌入到我的指令中,我的测试运行良好.但是,由于这个应用程序将是巨大的,它将无法扩展.但是当我移动模板并在我的指令中加载它时templateUrl,我无法摆脱以下错误之一(取决于我如何修改conf):
(初始错误)"意外请求:GET路径/到/ mytpl.html"
"ReferenceError:找不到变量:angular".使用不同的配置会发生此错误:
{pattern: 'path/to/mytpl.html', included: false}输入我的karma.conf并path/to/mytpl.html在我的测试文件中添加一个requirejs的define (这是我希望它的工作方式).path/to/mytpl.html输入我的karma.conf 时,我的所有模板都会返回此错误(无论我是否使用ng-html2-js预处理器)."错误:[$ injector:modulerr]由于以下原因无法实例化模块模板:错误:[$ injector:nomod]模块'templates'不可用!" .我看到karma-ng-html2js-preprocessor可用于创建一个包含所有模板的模块,但它从未起作用.
注意:我没有在karma.conf中使用FQN,我在这里使用它是一致的.我认为这不重要,但我更倾向于准确
我看到有人把'path/to/mytpl.html': {deps: ['angular']} 他们放在他们的test-main.js的垫片部分.但它对我不起作用,并且该解决方案不会扩展.