18

I wonder what is the difference between testRPC and geth (on private network) because, they both can create:

  • blockchains

  • nodes

  • accounts

The "only" difference I see, is that the testRPC has almost unlimited Ether, which makes the mining process unnecessary.

Maybe is there a link between geth and the testRPC? I mean applying some functions implented in geth could be applied on a testRPC network?

Thanks in advance,

1 Answer 1

15

Test RPC is a client for testing:

testrpc is a Node.js based Ethereum client for testing and development. It uses ethereumjs to simulate full client behavior and make developing Ethereum applications much faster. It also includes all popular RPC functions and features (like events) and can be run deterministically to make development a breeze.

While Geth is a full client in GO Language that you can use to connect to the real chain or start your own testnet server.

geth is the command line interface for running a full ethereum node implemented in Go. It is the main deliverable of the Frontier Release.

Of course, some succeed tests in testRPC cases can be transfered to geth.

6
  • Thanks for your answer. But I still miss something: What is the difference between testRPC and a private testnet server with go/geth? Oct 17, 2016 at 15:56
  • 2
    Testrpc only simulate the chain but is not one. Oct 17, 2016 at 20:21
  • 2
    I also believe transactions get mined right away on TestRPC while on a test blockchain with geth, it takes a bit more time to mine the transaction, so it could be a drag on development, in a sense. Feb 13, 2018 at 19:49
  • 2
    Also, in addition to what @NicolasMassart, you wouldn't test on TestRPC only before deploying to mainnet, it would be wise to test on geth's test blockchain as well prior to doing so. Feb 13, 2018 at 20:28
  • 1
    @NYCTechEngineer absolutely. Testrpc is really just for the development phase. Testing on the official testnet or on a private net it best practice to fully validate your contract. Feb 13, 2018 at 20:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.