2. Agenda
➔ Introduction to Blockchain
➔ Significance of Blockchain Technology
➔ How does a Blockchain work
➔ When do we need it
➔ Types of Blockchain
➔ Blockchain in Real World Problems
➔ Smart Contracts
➔ Sample Application with Blockchain
➔ Test Strategy for Blockchain Application
➔ Blockchain Testing Tools in Market
➔ Contract Testing and Functional Testing
3. Lets “Understand the theory behind the working of Blockchain, when to
use it and how can we test Blockchain Applications”
9. Do you really need a Blockchain?
Permissionless
Blockchain
Public
Permissioned
Blockchain
Private
Permissioned
Blockchain
Don’t use
Blockchain
Do you need to
store state?
Are there
multiple
writers?
Can you use
online TTP?
Are all writers
known?
Is public
verifiability
required?
Are all writers
trusted?
No No
No No
No
No
Yes Yes
Yes
Yes
Yes
Yes
Yes
No
11. Sender: Bob
Amount: 10$
Receiver: Alice
Blockchain Structure
Genesis Block
Previous
Block Hash
Block Hash
Data
Patient: Chris M
Doctor: Dr. George Dan
Purpose: Heart Surgery
15. Alex (A) Betty (B)
Chris (C)Diana (D)
Genesis: A has $100
Amount: $50
A to B: $50
Amount: $30
B to C: $30
No centralised
system?
Amount: $80
Distributed Open Ledger
Genesis: A has $100
A to B:
$50
B to C:
$30
Genesis: A has $100
A to B:
$50
B to C:
$30
Genesis: A has $100
A to B:
$50
B to C:
$30
Genesis: A has $100
A to B:
$50
B to C:
$30
16. Alex (A) Betty (B) Chris (C)
Amount: $50 Amount: $30
Block Hash: 0X56
Previous Hash: 0000
Amount: 80$
Block Hash: I6GT
Previous Hash: 0X56
Amount: 50$
Block Hash: 54B8
Previous Hash: I6GT
Amount: 30$
Tampers Data
20$
XC65
Proof of Work
17. Proof Of Work
Proof of Work, or PoW is used to confirm
transactions and produce new blocks to the chain by
using consensus algorithm.
21. Alex (A) Betty (B)
Chris (C)Diana (D)
Genesis: A has
$100
A to B:
$50
B to C:
$30
Genesis: A has
$100
A to B:
$50
B to C:
$30
Amount: $10
B to D: $10
Unvalidated Transaction
MINER
MINER
Validate Transaction
Update its ledger
Publish
Transaction Fee
22. Let’s Revisit
➔ Introduction to Blockchain
➔ Significance of Blockchain Technology
➔ How does a Blockchain work
➔ When do we need it
➔ Blockchain Concepts:
◆ Proof of Work
◆ Miners
◆ Block Time and Transaction Fee
23. Types of Blockchain
Permissionless
Public
Permissioned
Private
Permissioned
Consortium
Anyone can join the
network.
Anyone can read, verify
Limited number of users
can join network
Data viewed by public
Limited number of users
can join network
Data restricted for view by
public
Intra firm validation
Limited number of users
can join network
Data restricted for view by
public
Inter firm validation
28. How does it work?
Initiates the
transaction
Confirms the
transaction from
Sender’s Account to
Buyer’s Account
Block gets Mined and
added to the Chain
29. Testing the Application
❏ Technology Stack
❏ Performance Testing
❏ Integration Testing
❏ Security Testing
❏ Smart Contract Testing
❏ Node Testing
Factors to consider while testing Blockchain Application