Step 1: You need to deploy the DemoContract.sol contract on a test network (Ropsten, Rinkeby, etc)
If you do not know how, watch: https://youtu.be/nnVX6fQUu4o

Step 2: Enter the contract address, for example: 0xf1d2e0b8e09f4dda7f3fd6db26496f74079faeeb:


Step 3: Enter your account address (use a test account) from which to interact with the contract:


Step 4: Enter an integer (uint) and press the store button.
This will execute the contract method setStoredVal. The state variable storedVal will contain your entered integer.


Step 5: Enter a value (uint) and press the increase button. The amount will be added to storeVal.
This will execute the contract method increaseStoredVal. This method can only be executed by the contract owner.


Step 6: Enter a text (string) and press the store button.
This will execute the contract method setStoredText. The state variable storedText will contain your entered text.


Step 7: Enter an amount in Ethers (for example: 1.45) and press the deposit button.
This will execute the contract method deposit. The state variable balances (mapping) will hold the balance per address.


Step 8: Enter an amount in Ethers (for example: 1.45) and press the withdraw button.
This will execute the contract method withdraw. The amount will be subtracted from the balances mapping variable. The state variable balances (mapping) will hold the balance per address.
Make sure you have enough balance stored otherwise an exception will be thrown.
You can check this by pressing the button "Get balance for account address (step 3)"


Step 6: After you have done step 1-5, you can call the getter methods to retrieve the values.