javascript - 获取 context.config.failTestOn 错误 Log.exclude Keywords.forEach 不是量角器中的函数错误
问题描述
当我们从主菜单(鼠标悬停)单击子菜单时发生以下错误。
if (browserLogs) {
browserLogs.forEach(function (log) {
var logLevel = context.config.failTestOnErrorLog.failTestOnErrorLogLevel ? context.config.failTestOnErrorLog.failTestOnErrorLogLevel : 900;
var flag = false;
if (log.level.value > logLevel) { // it's an error log
if (context.config.failTestOnErrorLog.excludeKeywords) {
context.config.failTestOnErrorLog.excludeKeywords.forEach(function (keyword) {
if (log.message.search(keyword) > -1) {
flag = true;
}
});
}
expect(log.level.value > logLevel && flag).toEqualBecause(true, 'Error logs present in console:' + require('util').inspect(log));
}
})
}
解决方案
您可能知道forEach
这是一个数组操作,但我经常看到错误地在对象上调用它的失败。您可以通过包含以下两行来检查它是否绝对是一个数组?
console.log(typeof context.config.failTestOnErrorLog.excludeKeywords);
console.log(Array.isArray(context.config.failTestOnErrorLog.excludeKeywords));
它确实是一个对象,您仍然可以使用本文中的信息对其进行循环。
希望有帮助,如果没有,请告诉我,我可以建议其他选择。多次看到这个错误。
推荐阅读
- c++ - 如何在 C++ 中静默卸载 .exe
- java - 为什么 JFrame 对象似乎还活着,即使没有对它的引用?
- javascript - 使用 Nuxt 的多个倒数计时器
- arrays - 获取返回函数,在网页上显示分类结果
- android - 工具栏后退按钮不会做任何事情
- java - 如何通过 Google Drive API v3 Java 使用服务帐户访问 Team Drive
- javascript - 如何按函数生成 HTML 并稍后在 JS React 中呈现
- spring-boot - pom.xml中依赖管理标签的作用是什么?
- google-apps-script - 在共享驱动器的电子表格下使用 SpreadsheetApp 的 addEditors 函数时出错
- python - 比较具有作为列表元素的值的 2 个字典以查找添加/删除的内容的有效方法