对宠物商店教学案例truffle test 的时候出错:
TestAdoption
1) "before all" hook: prepare suite
0 passing (2s)
1 failing
1) TestAdoption
"before all" hook: prepare suite:
TypeError: Error parsing D:/blockChain/hello/contracts/Adoption.sol: Cannot destructure property 'body' of 'undefined' as
it is undefined
at getImports (C:\Users\lenovo\AppData\Local\Yarn\Data\global\node_modules\truffle\build\webpack:\packages\compile-solidity\profiler\getImports.js:5:28)
at C:\Users\lenovo\AppData\Local\Yarn\Data\global\node_modules\truffle\build\webpack:\packages\compile-solidity\profiler\index.js:145:1
具体不知道哪出了问题,但是把truffle降级为 5.1.10版本就行了:
npm uninstall truffle
truffle vertion //检查还卸载干净没有,如果没有就where truffle找到truffle所在路径,然后打开路径删掉truffle
npm install -g truffle@5.1.10
truffle vertion //确认一下是不是5.1.10版本
再test一下,成功
最后,我猜想可能是我之前胡乱搞得yarn目录下也有truffle才造成的这个错误,不过不想去试了,用5.1.10版本绝对稳妥