Ethereum runs testnets so that developers can run software before launching it on Ethereum’s main network (mainnet). Test networks essentially act as copies of the Ethereum mainnet, and they allow client teams, infrastructure providers and developers to test any changes to their applications before launching them in a more high-stakes environment.