有人可以提供一个使用Jest测试AngularJS 1.x应用程序(工厂,控制器)的通用示例吗?该示例应使用普通ES5(无ES6 import语法)编写。
高水平:
require('../node_modules/angular/angular.min.js');
require('../node_modules/angular-mocks/angular-mocks.js');
require('./mathservice.js');
describe('Math service - addTwoNumbers', function(){
beforeEach(
angular.mock.module('mathmodule')
);
var _mathservice;
beforeEach(inject((mathservice) => {
_mathservice = mathservice;
}));
it('1 + 1 should equal 2', function(){
var actual = _mathservice.addTwoNumbers(1,1);
expect(actual).toEqual(2);
});
});
Run Code Online (Sandbox Code Playgroud)
我已经整理了一篇文章,逐步展示了如何进行设置以获取更多详细信息:
https://curtistimson.co.uk/post/angularjs/angularjs-jest-unit-testing/
将其添加到您的 package.json 中:
"scripts": {
"test": "jest",
"test:watch": "jest --watch",
"test:ci": "jest --runInBand"
},
"jest": {
"verbose": true,
"moduleDirectories": ["node_modules", "app"]
}
Run Code Online (Sandbox Code Playgroud)
使用 npm 安装 Angular、Angular-Mocks 和 Jest。
编写测试并使用npm test命令运行它。
请参阅此处的示例https://github.com/rantiev/template-jest-with-angular
| 归档时间: |
|
| 查看次数: |
3791 次 |
| 最近记录: |