我试图用Jasmine进行JS测试(使用Karma)。但是,当我运行测试时,输出不明确,测试套件(= describe())打印不正确,而是显示[object Object]。
如何让它打印给描述()的实际文本?
感谢您的帮助! : - )
例如,此测试套件显示以下输出。
var splitService;
var splitRepositorySpy;
describe('SplitService', function () {
beforeEach(function () {
module('PayMeBack');
splitRepositorySpy = {
list: jasmine.createSpy(),
get: jasmine.createSpy(),
insert: jasmine.createSpy()
};
module(function ($provide) {
$provide.value('splitRepository', splitRepositorySpy);
});
module(function ($provide) {
$provide.value('dateTimeProvider', { now: function () { return new Date('29 Dec 2015 15:40:55'); } });
});
inject(function ($injector) {
splitService = $injector.get('splitService');
});
});
describe('list', function () {
it('should call the repository', function () {
var splits = splitService.list();
expect(splitRepositorySpy.list).toHaveBeenCalled();
});
});
describe('get', function () {
it('should call the repository', function () {
var splits = splitService.get();
expect(splitRepositorySpy.get).toHaveBeenCalled();
});
});
describe('create', function () {
var expectedSplitName = 'Tue Dec 29 2015 15:40';
it('should call the repository with name ' + expectedSplitName, function () {
var splits = splitService.create();
expect(splitRepositorySpy.insert).toHaveBeenCalledWith(expectedSplitName);
});
});
});
PS E:\Development\Project1> karma start
INFO [karma]: Karma v0.12.0 server started at http://localhost:9876/
INFO [launcher]: Starting browser Chrome
INFO [Chrome 47.0.2526 (Windows 8.1)]: Connected on socket zBarh9jOriLwkoeai8ao with id 21844249
[object Object]
[object Object]
V should call the repository
[object Object]
[object Object]
[object Object]
V should call the repository
[object Object]
[object Object]
[object Object]
[object Object]
V should call the repository with name Tue Dec 29 2015 15:40
Chrome 47.0.2526 (Windows 8.1): Executed 3 of 3 SUCCESS (0.056 secs / 0.051 secs)
TOTAL: 3 SUCCESS
答案 0 :(得分:0)
升级为“karma-jasmine”:“0.3.6”似乎解决了这个问题。