IT IS OUT OF DATE INFO!

Use HardHat framework!

The steps from https://github.com/harvest-finance/harvest/blob/master/CodingStrategies.MD

Ganache and Truffle https://www.trufflesuite.com/

Tests required archive data, so you can use free account https://alchemyapi.io/

Truffle testing https://www.trufflesuite.com/docs/truffle/testing/writing-tests-in-javascript

Environment preparation

Install NodeJS 12.x

Other versions have a different troubles with Truffle

In package.json fix version for

"@openzeppelin/contracts": "2.5.0", - don't use 3 version!

Manual install missed packages

npm install @openzeppelin/upgrades@2.8.0
npm install @openzeppelin/contracts-ethereum-package@2.5.0

Testing

It is important that the strategies are tested. The tests need to prove the following (at minimum):