Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Overcoming the Complexities of Testing a Cryptocurrency Wallet - Nov 2023

Overcoming the Complexities of Testing a Cryptocurrency Wallet - Nov 2023

Overcoming the Complexities of Testing a Cryptocurrency Wallet
Agile Testing Days
Potsdam
Nov 2023

Peter Yinusa

November 14, 2023
Tweet

More Decks by Peter Yinusa

Other Decks in Technology

Transcript

  1. What is a Crypto Wallet A cryptocurrency wallet is a

    software program that holds your public and private keys and interacts with various blockchains enabling you to send and receive digital assets, including cryptocurrencies, stablecoins and NFTs (non-fungible tokens).
  2. Reveal Secret Recovery Phrase 1. automation 2. regression 3. collaboration

    4. retrospective 5. scrum 6. blockchain 7. agile 8. incremental 9. browser 10. iterative 11. sprint 12. extension
  3. Confirm Secret Recovery Phrase 1. automation 2. regression 3. ______

    4. _______ 5. scrum 6. blockchain 7. agile 8. _______ 9. browser 10. iterative 11. sprint 12. extension
  4. Confirm Secret Recovery Phrase 1. automation 2. regression 3. collaboration

    4. _______ 5. scrum 6. blockchain 7. agile 8. _______ 9. browser 10. iterative 11. sprint 12. extension
  5. Confirm Secret Recovery Phrase 1. automation 2. regression 3. collaboration

    4. retrospective 5. scrum 6. blockchain 7. agile 8. _______ 9. browser 10. iterative 11. sprint 12. extension
  6. Confirm Secret Recovery Phrase 1. automation 2. regression 3. collaboration

    4. retrospective 5. scrum 6. blockchain 7. agile 8. incremental 9. browser 10. iterative 11. sprint 12. extension
  7. Hot Wallets • Connected to the internet • Web-based, desktop

    & mobile wallets • Free Cold Wallets • Offline • Hardware wallets • Expensive Types of Wallets
  8. Non-Custodial Wallets • You have complete control of your private

    keys • Lose your private key/seed phrase, and you lose access to your assets • No KYC or AML processes or procedures Types of Wallets Custodial Wallets • Third-party has control of private keys • Recovery mechanisms in place so you can regain access to your wallet • KYC and AML processes and procedures
  9. Blockchain Tooling The maturity of blockchain developer tools is still

    in its early stages as developers explore and experiment with different ways to build decentralised applications (dApps) on blockchain networks.
  10. Blockchain Environment Cost • Pay gas fees to cover the

    computational effort required to execute the specific operation on the network Speed • Blocks are committed once every twelve seconds Control • No entity has control over the network
  11. Release Process for Browser Extensions Review times “If your extension

    is pending review for more than three weeks, please contact developer support to request assistance.” Store violations Rejections and warnings.
  12. Feature Flags Use feature flags as part of your build

    or feature release process. Feature flags help reduce risk, allowing you to do controlled testing. Build and deploy new features as part of the regular release process without having those features generally available. The development of the feature is conveniently decoupled from their exposure.
  13. Controlling the Blockchain Local Blockchain • Personal Ethereum Blockchain e.g.

    Truffle Suite Ganache DevNets • Private environment against Mainnet data e.g. Tenderly DevNets Public Testnet • Public testnet that developers can use e.g. Sepolia
  14. Errors: • Stack trace • Breadcrumbs • Custom context •

    Tracking releases • Session replay Application Performance Monitoring