什么是测试网?
测试网络(简称testnet)用于模拟以太网主网的行为。有一些公开的测试网络可以替代以太坊区块链。这些网络上的货币毫无价值,但它们仍然很有用,因为合约和协议变更的功能可以在不中断以太网主网或使用真实货币的情况下进行测试。当主网(简称mainnet)即将包含对以太坊协议的任何重大改变时,其测试主要在这些测试网络上完成。这些测试网络也被大量开发人员用于在部署到主网之前测试应用程序。
使用 Testnets
你可以连接到公共可用的测试网络或创建你自己的私人测试网络。首先,让我们使用公共测试网来更简单地起步。要使用公共测试网络,需要一些测试网络以及到该网络的连接。对于testnet ether,使用“faucet”,faucet缓慢地分配测试ether,向任何询问的人“滴送”少量ether。要连接到一个测试网络,你需要一个以太坊客户端,完整的客户端,比如geth,或者完整的客户端的网关,比如MetaMask。
获取测试以太网
由于测试网不以真正的金钱运作,矿工保护测试网的动机很弱。因此,测试网必须保护自己免受滥用和攻击。因此,为这些测试网创建了水龙头,以受控的方式向开发人员分发免费的测试ether(大多数faucet每隔几秒左右"滴注"ether)。这种以太网的受控分配可防止用户滥用链,因为提供有限的ether供应可防止他们向链中写入过多内容或执行太多交易。另外,一些testnets已经实施了认证证明(Proof of Authentication)方案,使用faucet需要具有适当社交媒体网站的认证的凭证。
连接到Testnets
Metamask
Metamask完全支持Ropsten,Kovan和Rinkeby测试网,但也可以连接到其他测试网和本地网。在Metamask中,只需单击“main network”下拉菜单,即可切换网络。MetaMask还提供了一个“buy”测试ether的选项,该选项将你引导至你可以请求免费测试以太网的faucet。如果使用Ropsten测试网,则可以从Ropsten测试faucet服务中获取ether。你可以从此页面访问此faucet。它需要Metamask扩展才能工作。https://faucet.metamask.io/
Infura
当MetaMask连接到测试网络时,它使用Infura服务提供商来访问JSON-RPC接口。Infura诞生的目的是为ConsenSys内部项目提供稳定可靠的RPC访问。除了JSON-RPC API之外,Infura还提供REST(表述性状态转移)API,IPFS(星际文件系统,即去中心化存储)API和Websockets(即流式传输)API。
Infura为Ethereum主网,Ropsten,Kovan,Rinkeby和INFURAnet(用于Infura的定制测试网络)提供网关API。
要通过MetaMask使用Infura进行较低级别的活动,你不需要账户。要直接使用API,你需要注册一个账户并使用Infura提供的API密钥。
有关Infura的更多信息,请访问:
https://infura.io/
Remix集成开发环境(IDE)
Remix IDE可用于在主网和测试网上部署和交互智能合约,包括Ropsten,Rinkeby和Kovan(Web3提供者使用Infura地