为什么 Node typescript 项目的 jasmine Karma 单元测试显示覆盖范围包括依赖项?

2024-05-04

正如题主所说,我们项目的代码覆盖率包括节点依赖。但请注意,当我们开发和发布它时,此 npm 依赖项的源代码也是项目的一部分。 这是该项目的结构:

  • root
    • main_project
      • 业力.conf.ts
      • src 和其他要测试并生成覆盖率的文件
      • test
    • side_project which is packaged and published to npm and used across multiple projects including this one
      • src etc.

So, even though my karma config is within the main_project(src and src/* in image) folder here, which I want to test and generate coverage for, karma includes the side_project(petreol-api-wrapper in the image) as well in the coverage, like this: screenshot of karma coverage

这是我的相关业力配置:

const testRecursivePath = "test/*Test.ts";
const srcOriginalRecursivePath = "src/**/*.ts";
frameworks: ["jasmine"],
reporters: [
    "progress",
    "junit",
    "coverage-istanbul"
],
files: [
    testRecursivePath,
    {
        pattern: srcOriginalRecursivePath,
        included: false,
        served: true
    }
],
preprocessors: {
    [testRecursivePath]: ["webpack", "coverage"]
},

有人可以帮我解决这个问题吗?


有一个选项可以排除文件karma.conf,例如,下面的配置将排除所有ts里面的文件node_modules文件夹。您可能需要使用我在下面的示例中提供的相对路径。您可以忽略所有使用**.*

exclude: [
        "node_modules/**/*.ts"
]

用作

const testRecursivePath = "test/*Test.ts";
const srcOriginalRecursivePath = "src/**/*.ts";
frameworks: ["jasmine"],
reporters: [
    "progress",
    "junit",
    "coverage-istanbul"
],
files: [
    testRecursivePath,
    {
        pattern: srcOriginalRecursivePath,
        included: false,
        served: true
    }
],
exclude: [
        "node_modules/**/*.ts"
]
preprocessors: {
    [testRecursivePath]: ["webpack", "coverage"]
},
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 Node typescript 项目的 jasmine Karma 单元测试显示覆盖范围包括依赖项? 的相关文章

随机推荐

  • 如何在经典 ASP 中使用地理编码 API v3

    想知道是否有人可以帮助我 我正在尝试返回地址的纬度和经度结果 刚接触编码并且陷入困境 以下代码工作正常 直到地理编码从 v2 变为 v3 你能告诉我哪里错了吗 我是否需要新的 v3 密钥或密钥 提前致谢
  • 在 Swift 中枚举多个具有相同值的情况

    在 C 中 你可以让你的枚举具有以下内容 typedef enum Bar A 0 B 0 C 1 Bar 在 Swift 中我想做等价的事情 然而 编译器抱怨它不是唯一的 我如何告诉它我希望两个案例具有相同的值 enum Bar Int
  • log4j 中的异常深度

    我的 Myfaces 2 应用程序遇到实例化异常 但是通过 log4j 打印的异常会切断堆栈跟踪的其余部分 这是我所看到的 javax faces FacesException java lang InstantiationExceptio
  • Windows 8 24x24 徽章徽标图像未通过 wac 工具测试

    我正在使用工具开发 Windows 8 应用程序适用于 Windows 8 的 Microsoft Visual Studio Express当我创建要在应用商店上传的应用程序包时 它未通过 WAC 工具测试并给出以下错误 Image re
  • 当我在gunicorn上运行Flask应用程序时设置app.wsgi_app = ProxyFix(app.wsgi_app)时会发生什么?

    我使用 Flask 构建了一个基本的 Web 应用程序 并且能够使用其本机 http 服务器从虚拟机运行它 我很快意识到 通过这种设置 请求会被阻塞 我无法对资源发出并发请求 任何新请求都会等到较早的请求完成 并决定尝试使用gunicorn
  • 无法加载文件或程序集“System.Security.Principal.Windows”

    解决方案已成功编译 但是当我将现有的类文件添加到项目中后 出现此错误 无法运行指定的任务可执行文件 csc exe 不能 加载文件或程序集 System Security Principal Windows 版本 4 0 1 0 文化 中性
  • 为什么十六进制数要加上 0x 前缀?

    为什么十六进制数字前缀为0x 我理解前缀的用法 但不明白为什么的意义0x被选中 短篇故事 The 0告诉解析器它正在处理一个常量 而不是标识符 保留字 仍然需要一些东西来指定数基 x是任意选择 很长的故事 在 60 年代 流行的编程数字系统
  • 如何使用过程更改列的默认值

    这是我当前的 SQL 的样子 DELIMITER CREATE PROCEDURE updateDefaultUserRole IN rid in INT BEGIN ALTER TABLE users MODIFY rid INT 255
  • 如何在没有IB的情况下将2个按钮添加到右侧的UINavigationbar中?

    我怎样才能添加2个按钮到UINavigationBar没有XIB 2 个按钮应在右侧对齐UINavigationBar 我知道如何添加一个按钮 但是添加两个怎么样 使用 iOS 5 就这么简单 UIBarButtonItem btnShar
  • 如何使用 OR 逻辑(而不是 AND)过滤表列

    小提琴示例 http jsfiddle net fks37 我有一个 html 表 A B C D 0 1 0 1 0 1 0 0 1 0 0 1 我要过滤non zero列 使用 jQuery dataTables 不是硬性要求 只是我当
  • 将文本文件转换为逗号分隔的字符串

    我似乎没有找到与这个问题完全匹配的问题 我有一个文本文件 每行有一个文本标记 没有任何逗号 制表符或引号 我想根据文件内容创建一个逗号分隔的字符串 Input one two three Output one two three 我正在使用
  • Sqoop mysql错误-通信链路故障

    尝试运行以下命令 sqoop import connect jdbc mysql 3306 home credit risk table bureau target dir home sqoop username root password
  • 你可以将 UIGestureRecognizer 附加到多个视图吗?

    UITapGestureRecognizer tapGesture UITapGestureRecognizer alloc initWithTarget self action selector tapTapTap self view1
  • IE 302 重定向无缓存标头问题

    发布信息后返回 302 重定向 此重定向旨在重新加载当前页面 这一切都工作正常 但 IE 在标头中添加了 No Cache Cache Control no cache 我们使用 Squid 来缓存我们的内容 并将其放在标头中绕过了鱿鱼 由
  • as3 事件 - 类型强制失败?

    我正在将事件从孩子发送到父母 swf 它工作正常 直到我使用预加载器 swf 加载父级 然后父级停止从子级获取事件 我现在收到此错误 TypeError Error 1034 Type Coercion failed cannot conv
  • 生成适用于不同时区和数据的计划

    我正在构建一个网络应用程序 指导人们早起 它会为用户生成七十天内的起床时间表 他们输入当前的上升时间和目标上升时间 然后 上升时间每周减少一定量 直到达到目标时间 用户必须登录网站并在预定时间 签到 考虑到当前登录用户的时区和夏令时 我对如
  • 如何在 Angular 6 中编辑环境变量而不重建?

    我通常将 API URL 设置为environment ts文件 我必须将相同的版本部署到具有不同 API URL 的多个客户端 目前我正在更改环境变量后进行单独的构建 有没有办法在构建后编辑环境变量 以便我可以为每个客户端提供相同的构建
  • 什么时候空值在列中“安全”?

    设计数据库时是否存在允许列为空与 3nf 规范化的一般经验法则 我有一个表 其中的列主要由空值 85 组成 但表大小不超过 10K 记录 不是很大 它主要用于日志记录和记录保存 因此大多数事务将是插入和选择 而不是更新 我试图同时考虑性能和
  • 如何删除 RadioListTile 上的内部填充,以便可以连续使用 3 个 RadioListTiles?

    我对 Flutter 和 Dart 还很陌生 我似乎找不到关于这个特定主题的任何提示 我想把 3RadioListTiles in a Row像这样 Row children Expanded child RadioListTile
  • 为什么 Node typescript 项目的 jasmine Karma 单元测试显示覆盖范围包括依赖项?

    正如题主所说 我们项目的代码覆盖率包括节点依赖 但请注意 当我们开发和发布它时 此 npm 依赖项的源代码也是项目的一部分 这是该项目的结构 root main project 业力 conf ts src 和其他要测试并生成覆盖率的文件