[Ethereum] Comprehensive guide to mining testnet ether

miningsolo-miningtestnets

So my usual faucet, Zerogox, is currently down. I'm writing documentation on a projet that needs a LOT of testing, and I can't possibly write something like "to start and get some testnet ether, go ask someone on reddit".

I don't need thousands of ether, I think even 1 to 5 a week would be enough, but I need a reliable, source. Since I can't rely on faucets (that are pretty hard to find right now), I need to mine testnet ether. Like I said, I could do with 1 ether a week.

But I don't understand how mining works, I didn't need it before. What gas price should I use to get fraction of ether easily?

The github page only gives theory, I have no idea of what real values I should use. It's also outdated (I assume), because for example miner.hashrate doesn't exist on the version of geth I'm using (which was released after the latest edit of the page).

It's hard to keep track of how much ether I've mined, and if I'm being successful, miner has almost 0 info, only functions (start, stop, and set stuff).

How do I efficiently mine testnet ether? Why can't I find a comprehensive guide about it? Most posts end with "Give me your address, I'll send you some" which is not at all what I want, I need to be independent.

I want to clarify a few things:

  • I cannot use a private testnet. I need to use the public one.
  • I'm only using geth. Mist and Ethereum Wallet are out of the picture.
  • I'm not looking for a small-time fix for my problem in particular, I'm asking for a comprehensive guide that I think could benefit to many people. Either it already exists, or we could start a wiki post with instructions and tips on what gas price gives best results, how to keep track of performances, etc.

Best Answer

This question has gotten a lot of views and still no answer so I thought I might as well post what I know. I haven't done much related to Ethereum lately so it might be a little outdated.

Basically, the guide gives as an example miner.start(8) which is pretty small. You're here to get your ether as soon as possible so you don't need to think small. In the doc I wrote, I said:

To start mining:

miner.start(64)

When you successfully mine a block, you get 5 ether. This operation can take around 20 minutes. To see if your account has ether:

primary = eth.accounts[0]

eth.getBalance(primary)

It should show something other than 0.

So basically if you have the CPU and really need ether, you can start as many threads as you need, 128, 256. I didn't experiment enough to know performance of each but it worked for me so I moved on. Feel free to add your experience if it's relevant.

Related Topic