gpt4 book ai didi

jasmine - 如何在 Karma/Jasmine 中检查控制台日志?

转载 作者:行者123 更新时间:2023-12-03 21:28:26 25 4
gpt4 key购买 nike

假设我有这个功能我想测试:

var test = function () {
console.log('words!');
};

我会写这样的东西

define('test()', function () {
it('prints "words!" to the screen', function() {
test();
expect(<browser logs>).toContain('words!'); // TODO
}
}

但我不知道如何查看控制台日志,或者这是否可能。最好,我会在任何浏览器中执行此操作,或者至少是 PhantomJS。

最佳答案

您可以在 console.log 函数上创建 spy 。代码可能看起来像......

describe("log reporting", function () {    
beforeEach(function(){
spyOn(window.console, 'log');
});
it('should print log message to console', function(){
test();
expect(window.console.log).toHaveBeenCalled();
})
});

通过这个例子,你会知道你的 console.log 函数被调用了。这正是您需要知道的。您不想将记录的消息与预期值进行比较,仅仅因为您将单元测试不是您的代码,而是 window.console.log 函数本身,您没有编写;) 您可以调用“.and.callFake(function (){做点什么});”。在这种情况下,您将执行一些操作而不是实际的 console.log 调用,例如检查您的值。

关于jasmine - 如何在 Karma/Jasmine 中检查控制台日志?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42770027/

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