npm 包 truffle-reporters 使用教程

阅读时长 6 分钟读完

什么是 truffle-reporters

truffle-reporters 是一个用于测试报告生成的 npm 包,它允许我们将测试结果输出为 HTML、JSON、JUnit 等格式的报告。它是 Truffle 的一个插件,Truffle 是一个用于构建智能合约项目的工具,它使用 Solidity 语言,可以允许开发者使用 JavaScript 管理合约的构建、测试和部署等过程。 truffle-reporters 可以轻松为 Truffle 的测试结果生成漂亮和清晰的报告,方便我们在项目开发和测试中进行结果的查看和比对,也方便我们对项目的管理和迭代。

truffle-reporters 的安装

在开始使用 truffle-reporters 之前,我们需要确认 Truffle 已经在本地环境中正确安装。如果还没安装,可以通过以下命令在终端进行安装:

安装完成之后,我们安装 truffle-reporters:

truffle-reporters 的使用

1. 配置 truffle-config.js

在项目的根目录下,新建 truffle-config.js 并在这个文件中进行配置:

truffle-config.js 示例代码如下:

-- -------------------- ---- -------
-------------- - -
  --------- -
    ------------ -
      ----- ------------
      ----- -----
      ----------- ---- -- ----- --- ------- --
    --
  --
  ---------- -
    ----- -
      -------- --------
    --
  --
  -------- -
    ------------------------
  --
  --------- -
    -------- -- ------
    ------------------- -- --- ------
    ------------ -- --------- ----
  --
  ------ -
    ---------------- -
      ---------- -------------
    --
  --
--
展开代码

reporter 部分是新增的部分,其中 mocha 是测试的单元测试输出,eth-gas-reporter 描述了 Gas 使用情况的报告输出,sonarqube 呈现了 SonarQube 报告输出。这里可能需要根据实际情况进行调整。

2. 使用 truffle-test

在你的测试文件中,改用 truffle-test 的测试运行程序,为了演示,我们假设写了一个名为 test.js 的测试文件,下面对其进行修改。

test.js 示例修改后代码:

-- -------------------- ---- -------
----- - ------ - - ----------------
----- ------------- - ------------------------------
----- ----- - ---------------------------

----------------- ---------- -- -
  --- ----- - -----
  ----- ------- ------ - ---------

  ------------ -- -- -
    ----- - ----- -----------------
  ---

  ---------- ---- ------- ----- ------ --- ---------- ----- -- -- -
    ----- ---- - ----- -------------
    ----- ------ - ----- ---------------
    ----- -------- - ----- -----------------
    ------------------ -----------
    -------------------- ------
    ---------------------- ----
  ---

  ---------- ----- ----- -- ---- ------- ----- -- -- -
    ----- ----------------- ------
    ----- ------- - ----- -----------------------
    --------------------- ------
  ---

  ---------- --- ----- ---- -- ---- ------- ----- -- -- -
    ----- ----------------------
      ----------------- ----- - ----- ----- ---
      ------- -- --- --- ------
    --
  ---
---
展开代码

测试文件中只有对 token 常用功能进行了简单的测试,但可以看见测试代码已经发生了一些改变,比如将 chai 改写成了 truffle-assertions, 以及我们调用的是 Truffle 的 contract() 而不是以太坊的原始 artifacts.require()。这些不同之处,让我们使用 Truffle 管理测试的更加容易。

3. 运行 truffle test

在运行测试之前,需要编译 solidity 合约,执行以下命令:

编译完成之后,我们就可以在终端执行测试命令:

4. 查看测试报告

测试完成后,我们需要查看测试的结果,从而对项目的后续开发和调试进行指导。这个时候,我们就可以通过 truffle-reporters 生成漂亮清晰的测试报告。我们修改一下运行命令,增加参数:

这样,在运行测试之后,我们就可以在项目的根目录下找到 test-report 文件夹,里面保存了测试的结果和报告。

结语

truffle-reporters 是一个优秀的测试报告生成工具,可以帮助我们更好地进行项目开发和测试。在实际开发中,我们可以根据需要灵活使用 truffle-reporters 的各种功能。希望本篇文章可以帮助到所有前端开发者,提高测试的效率和质量,让我们的项目更加优秀。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/72551

纠错
反馈

纠错反馈