使用 Jasmine 设置测试报告 - AWS CodeBuild

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 Jasmine 设置测试报告

以下过程演示如何 AWS CodeBuild 使用 Jasmine 测试框架设置BDD测试报告。

该过程需要以下先决条件:

  • 你有一个现有 CodeBuild 项目。

  • 您的项目是一个 Node.js 项目,此项目设置为使用 Jasmine 测试框架。

jasmine-reporters 程序包添加到项目 package.json 文件的 devDependencies 部分。这个软件包里有一系列可以与 Jasmine 一起使用的 JavaScript 记者类。

npm install --save-dev jasmine-reporters

如果它尚未存在,请将 test 脚本添加到项目的 package.json 文件中。test 脚本确保在运行 npm test 时调用 Jasmine。

{ "scripts": { "test": "npx jasmine" } }

CodeBuild 支持以下 Jasmine 测试报告器:

JUnitXmlReporter

用于以 JunitXml 格式生成报告。

NUnitXmlReporter

用于以 NunitXml 格式生成报告。

默认情况下,具有 Jasmine 的 Node.js 项目将有一个 spec 子目录,其中包含 Jasmine 配置和测试脚本。

要将 Jasmine 配置为以 JunitXML 格式生成报告,请通过将以下代码添加到测试中来实例化 JUnitXmlReporter 报告程序。

var reporters = require('jasmine-reporters'); var junitReporter = new reporters.JUnitXmlReporter({ savePath: <test report directory>, filePrefix: <report filename>, consolidateAll: true }); jasmine.getEnv().addReporter(junitReporter);

要将 Jasmine 配置为以 NunitXML 格式生成报告,请通过将以下代码添加到测试中来实例化 NUnitXmlReporter 报告程序。

var reporters = require('jasmine-reporters'); var nunitReporter = new reporters.NUnitXmlReporter({ savePath: <test report directory>, filePrefix: <report filename>, consolidateAll: true }); jasmine.getEnv().addReporter(nunitReporter)

测试报告将导出到指定的文件中 <test report directory>/<report filename>.

在您的 buildspec.yml 文件中,添加/更新以下部分。

version: 0.2 phases: pre_build: commands: - npm install build: commands: - npm build - npm test reports: jasmine_reports: files: - <report filename> file-format: JUNITXML base-directory: <test report directory>

如果您使用的是 NunitXml 报告格式,请将 file-format 值更改为以下值。

file-format: NUNITXML