Javascript 如何在karma测试中设置Tealium角度配置
此处有一个标记库: 我们将其集成到应用程序中。在应用程序初始化期间,我们需要为此库提供一些配置。这是这样做的: 我们的app.js:Javascript 如何在karma测试中设置Tealium角度配置,javascript,angularjs,karma-jasmine,tealium,Javascript,Angularjs,Karma Jasmine,Tealium,此处有一个标记库: 我们将其集成到应用程序中。在应用程序初始化期间,我们需要为此库提供一些配置。这是这样做的: 我们的app.js: angular.module('appname', [ 'TealiumHelper' ]) .config(function (tealiumProvider) { tealiumProvider.setConfig({ account: 'accountxx', profi
angular.module('appname', [ 'TealiumHelper' ])
.config(function (tealiumProvider) {
tealiumProvider.setConfig({
account: 'accountxx',
profile: 'profilexx',
environment: 'dev'
});
})
有一个类似的业力测试:
(function () {
'use strict';
describe('controllertest', function () {
beforeEach(module('appname','TealiumHelper'));
it('bla', function () {
//test code
}
}
}
当我开始测试时,我发现以下错误来自:
“未设置帐户或配置文件值。请先配置Tealium”
如何在karma测试中设置这些配置值?在测试中,您可以为TealiumHelper模块提供自己的实现
describe('controllertest', function () {
beforeEach(module('appname'))
angular.module('TealiumHelper', []).provider('tealium', {
$get: function () {},
setConfig: function () {}
});
/*** test starts here ***/
})
解决方案是(我的同事Andrea Fűrész实际上解决了这个问题):
她创建了一个包含以下内容的js文件:
function TealiumConfig() {
'use strict';
module('TealiumHelper', function (tealiumProvider) {
tealiumProvider.setConfig({
account: 'foooooo',
profile: 'baaaar',
environment: 'dev'
})
});
}
然后在karma配置中,它被添加到“文件”配置中。然后它成功了。谢谢你的回答。我明天会试试。@GaborLiptak-你是否按照我建议的方式改进了你的测试?我没有忘记,只是没有时间。我稍后再回来,我们选择了另一种解决方案。谢谢你的回复+1。