【发布时间】:2019-10-17 21:45:21
【问题描述】:
我正在为 Ember 2.16 组件编写集成测试,并且正在测试一些用户操作。
其中一个用户操作调用window.confirm(),询问用户是否确定要在删除项目之前删除项目。
我想测试这个组件的功能,包括接受和拒绝确认。组件操作类似于:
delete(id){
if(confirm('Are you sure you want to delete?')){
//do stuff
} else {
//do other stuff
}
}
在我的集成测试中,我成功地单击了按钮以显示提示,但我遇到了这个错误:
[Testem] Calling window.confirm() in tests is disabled, because it causes testem to fail with browser disconnect error.
如何创建绕过window.confirm() 功能的集成测试?
我已经在我的组件中添加了一种方法来绕过确认环境是否处于“测试”模式,但这并没有真正帮助,因为我没有测试依赖于 window.confirm() 的代码部分。
我环顾四周,看看是否有一个变量可以传递给组件以使window.confirm() 为真/假,但没有成功。
如何创建一个测试来测试一个在动作中调用window.confirm() 的组件?
【问题讨论】:
标签: javascript ember.js integration-testing