gpt4 book ai didi

unit-testing - 使用 UnderscoreJS 为 AngularJS 编写测试

转载 作者:行者123 更新时间:2023-12-04 07:03:14 24 4
gpt4 key购买 nike

我开始学习如何测试 Angular 应用程序,并遇到了一些问题。

我使用 Yeoman 生成了一个 Angular 应用程序。 yo angular --minsafe AppName
然后生成了一个服务yo angular:service MyService
在服务中编写了一个简单的方法,并对其进行了测试,以确保一切正常。我跑了grunt test并且测试通过了。

现在它变得有趣了,因为我使用 bower install underscore 在混合中添加了 Underscore并添加了一个 <script>index.html 中标记它.
然后我在service方法中添加了一些简单的代码,只是_.map([1,2,3], function(el){return el+1});查看 Underscore 是否正常工作。

我再次运行测试 grunt test ,它没有说 _ is not defined .

我认为,因为 Underscore 将 _ 变量附加到 window 对象,它将可用于测试。我错了吗?

此外,当我在浏览器中运行该应用程序时,Underscore 已定义并正常工作。

所以,我的问题是,您如何测试使用 Underscore 的 Angular 应用程序?这是一个常见问题还是我做错了什么?

谢谢,
佩塔尔

最佳答案

如果您看到 karma.conf.js Yeoman 生成的文件,你会看到 bower 组件没有自动添加。

// list of files / patterns to load in the browser
files = [
JASMINE,
JASMINE_ADAPTER,
'app/bower_components/angular/angular.js',
'app/bower_components/angular-mocks/angular-mocks.js',
'app/scripts/*.js',
'app/scripts/**/*.js',
'test/mock/**/*.js',
'test/spec/**/*.js'
];

只需将下划线文件夹添加到其中,您就不会遇到任何问题。

关于unit-testing - 使用 UnderscoreJS 为 AngularJS 编写测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18881592/

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