gpt4 book ai didi

angularjs - 我应该如何重用常见的 Angular 单元测试功能

转载 作者:行者123 更新时间:2023-12-01 06:29:11 25 4
gpt4 key购买 nike

我发现在编写 Angular 单元测试时,我经常在每个测试文件中做类似的事情,例如编译和消化指令。我想将这些函数提取到一个单独的库中,但我想知道如何最好地做到这一点。

我查看了 angular.mocks 并看到它使用模块模式将 angular.mocks 添加到窗口,我通过 karma 的文件数组加载了 angular-mocks.js。我以这种方式创建我的库没有问题,但想知道是否有某种我不知道的我可以在测试中使用的 require('mylib') 语句。

最佳答案

您可以使用 $controller服务来实例化一个帮助函数。例如

助手.js

var Helper = function($httpBackend, customParam) {
this.$httpBackend = $httpBackend;
this.customParam = customParam;
}

Helper.prototype.mockHttpRequest = function() {
this.$httpBackend.when(...);
}

测试.js
it('should do something', inject(function($controller) {
var helper = $controller('Helper', {customParam: 123});

helper.mockHttpRequest();

expect(...);
}));

关于angularjs - 我应该如何重用常见的 Angular 单元测试功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24551788/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com