我有一套测试solidity智能合约的单元测试。这些都很好,但是solidity智能合约文件的位置被硬编码到JavaScript测试文件中。
我想把这个文件的位置作为一个参数传递给我的测试脚本,但是我找不到一种方法用hardhat来做到这一点。
我现在这样运行我的测试:
npx安全帽测试“./scripts/erc20tests.js”
我希望能够像这样运行它:
npx安全帽测试“./scripts/erc20tests.js”“../../erc20.sol”
但这行不通。它不被接受为有效的我的安全帽。有什么建议吗?
我的另一个选择是将此值设置为环境变量,但我不喜欢这种方法。
1条答案
按热度按时间avwztpqn1#
您可以使用原生NodeJS
process.argv
属性(docs)来读取命令行参数。然后您可以动态加载
.sol
文件。test
文件夹。scripts
文件夹用于由npx hardhat run
命令执行的脚本。(docs)*