什么是 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