Travis-CI 是一个广泛使用的持续集成服务,它可以为项目提供自动化的构建、测试和部署等功能。而 Travis-CI 还可以集成 Coveralls,用于检测测试覆盖率,并提供详细的测试报告和代码覆盖率数据。但是,要想使用 Coveralls,你需要将测试覆盖率数据提交到它的服务器上,这对于某些敏感的项目可能存在一定的安全风险。
为了避免这种情况,我们可以使用另一个 npm 包,叫做 travis-cov。它可以在 Travis-CI 上显示测试覆盖率数据,而不需要将数据提交到 Coveralls。本文将介绍如何使用 travis-cov。
安装 travis-cov
首先,你需要在你的项目中安装 travis-cov:
npm install travis-cov --save-dev
配置环境变量
接下来,你需要在 Travis-CI 的配置文件中添加一些环境变量。具体来说,你需要添加 CODECLIMATE_REPO_TOKEN
和 CC_TEST_REPORTER_ID
两个环境变量。你可以在 Code Climate 和 Travis-CI 的网站上获取这些环境变量值。
打开 .travis.yml
文件,添加以下内容:
-- -------------------- ---- ------- ---- ------- - ---------------------------------------------------- - ---------------------------------------------- -------- - --- ------- - --- ------- -- ------------------------- ------------- - ------------------------- - ---------
上述代码中,CODECLIMATE_REPO_TOKEN
和 CC_TEST_REPORTER_ID
分别是 Code Climate 和 Travis-CI 提供的 API Token,用于授权 Travis-CI 将数据上传到 Code Climate 的服务器上。
运行测试
现在,你需要在 Travis-CI 上运行你的测试,并将测试覆盖率数据写入到 lcov.info
文件中。你可以使用 Istanbul 来生成这个文件,代码如下:
-- -------------------- ---- ------- ----- -------- - -------------------- ----- ----- - ----------------- ------------------- -- --- ---- ---- ------- ---- ------------------ -------------------- -- - ------------------ -- -- - ----- -------- - --- -------------------- ----- --------- - --- --------------------- ----------------------------------- --------------------- ------------------------- ----- -- -- - ----------------------- --- --- ---
上述代码中,我们使用 istanbul
包来生成测试覆盖率数据,并将数据写入到 lcov.info
文件中。将上述代码添加到你的测试文件中。当你在 Travis-CI 上运行测试时,它会自动调用 lcov.info
中的数据,并将覆盖率报告显示在你的 Travis-CI 页面上。
结论
我们介绍了如何使用 travis-cov 在 Travis-CI 上显示测试覆盖率数据。这样,你就可以更轻松地分析你的代码质量,并做出相应的改进。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/40239