我正在为一些遗留的javascript编写一些Jasmine测试,它会在代码中的某些地方产生一个警告或确认。
在弹出警告的时刻,它会在浏览器中暂停执行,要求我在继续之前按下ok。
我确信我漏掉了什么,但是有没有一种方法可以伪造警报?
更好的是,有没有可能找出警报的消息是什么?
谢谢你的帮助。
发布于 2014-11-18 00:17:01
spyOn(window, 'alert');
. . .
expect(window.alert).toHaveBeenCalledWith('a message');
发布于 2013-10-22 21:34:25
var oldalert = alert;
alert = jasmine.createSpy();
// do something
expect(alert).toHaveBeenCalledWith('message')
alert = oldalert
发布于 2014-01-06 03:57:00
另一种方法是在spec helper中执行此操作。
window.alert = function(){return;};
或者你需要消息的时候。
var actualMessage = '';
window.alert = function(message){actualMessage = message; return;}
https://stackoverflow.com/questions/19519328
复制相似问题