javascript - jQuery:测试执行期间未单击元素?
问题描述
describe('When a user selects a single-response Hotspot response', function () {
it('Then should highlight the selection', function () {
utils.clickHotspotElementAtIndex(view, 0, function() {
});
expect(view.$('.lrn_selected')[0]).toExist();
});
--------utils 辅助方法定义如下----------
const utils = _.extend({}, baseQuestionHelper.utils, {
isReactiveViews: baseQuestionHelper.utils.isReactiveViews(hotspotBundle, 'hotspot'),
getHotspotElementAtIndex: function (view, index) {
return view.$('polygon').eq(index).get(0);
},
clickHotspotElementAtIndex: function (view, index, callback) {
syn.click(utils.getHotspotElementAtIndex(view, index), null, callback);
console.log('clicked on a hotspot');
}
我的 jasmine 测试用例如上所写,其预期的测试流程很简单:
- 单击索引 0 处的热点元素
- 单击此 Hotspot 元素时,将为其
lrn_selected
分配一个新类。 - 验证此单击的热点元素的类名称为
lrn_selected
执行时,我确实得到了这个调试控制台日志clicked on a hotspot
。但是,此脚本将失败并显示以下错误消息:
- 未捕获 预期存在未定义。这表明未单击热点元素。
为什么没有点击?
解决方案
推荐阅读
- node.js - 如何更改 NPM 的包源
- ios - iOS Inapp 购买后订阅 upcell cancel_date_ms 值仍为空
- ffmpeg - 错误:成员访问不完整类型“AVFormatInternal”
- python - ValueError:当我尝试执行 fit_generator() 时,无法将输入数组从形状 (97,2048) 广播到形状 (97)
- r - 如何在 R 中下载“Afinn”和“NRC”词典?
- html - 在 angularjs 的选择选项中设置值
- vue.js - 在正在观看 vuex 状态的观察者中切换 GSAP 动画的问题
- azure-devops - Azure DevOps:由 git commit 触发的错误管道
- c++ - 如果使用 /MTd,则在 boost::interprocess::shared_memory_object 中崩溃
- c - 以下代码段的输出是什么?为什么?