💻
Plutus Pioneers Program: Fourth Cohort
  • Welcome to the Plutus Pioneers Program
  • Preliminary Work
    • Learn Haskell
    • Working Environment Set Up
      • Using Demeter
      • Using Docker
  • Lectures
    • Lecture 1
      • Lesson 1.1: Setting Up Our Development Environment
      • Lesson 1.2: Kuber Marketplace Demo
      • Lesson 1.3: Hashing & Digital Signatures
      • Lesson 1.4: The EUTxO-Model
      • Lecture 1 Homework Assignment
    • Lecture 2
      • Lesson 2.1: Low-Level, Untyped Validation Scripts
      • Lesson 2.2: Using the Cardano CLI to Interact with Plutus
      • Lesson 2.3: High-Level, Typed Validation Scripts
      • Lesson 2.4: Lesson 2 Summary
      • Lecture 2 Homework Assignment
    • Lecture 3
      • Lesson 3.1: Script Contexts
      • Lesson 3.2: Handling Time
      • Lesson 3.3: A Vesting Example
      • Lesson 3.4: Parameterized Contracts
      • Lesson 3.5: Off-Chain Code with Lucid
      • Lesson 3.6: Reference Scripts
      • Lesson 3.7: Lesson 3 Summary
      • Lecture 3 Homework Assignment
    • Lecture 4
      • Lesson 4.1: On-Chain Vs. Off-Chain Code
      • Lesson 4.2: Off-Chain Code with Cardano CLI and GUI
      • Lesson 4.3: Off-chain Code with Kuber
      • Lesson 4.4: Off-Chain Code with Lucid
      • Lecture 4 Homework Assignment
    • Lecture 5
      • Lesson 5.1: Introduction to Native Tokens in Cardano
      • Lesson 5.2: The Value Type
      • Lesson 5.3: A Simple Minting Policy
      • Lesson 5.4: A More Realistic Minting Policy
      • Lesson 5.5: Non-Fungible Tokens (NFTs) in Cardano
      • Lecture 5 Homework Assignment
    • Lecture 6
      • Lesson 6.1: The State Monad in Practice
      • Lesson 6.2: Introduction to the Plutus Simple Model Library
      • Lesson 6.3: Unit Testing a Smart Contract
      • Lesson 6.4: Property Testing a Smart Contract
      • Lesson 6.5: Testing Smart Contracts with Lucid
      • Lecture 6 Homework Assignment
    • Lecture 7
      • Lesson 7.1: Introduction to Marlowe
      • Lesson 7.2: Marlowe Playground Demo
      • Lecture 7 Homework Assignment
      • Lesson 7.3: Marlowe Starter Kit - Docker
      • Lesson 7.4: Marlowe Starter Kit Preliminaries
      • Lesson 7.5: ZCB using the Marlowe Runtime command-line client
      • Lesson 7.6: ZCB using the Marlowe Runtime REST API
      • Lesson 7.7: ZCB using the Marlowe Runtime CLI
      • Lesson 7.8: Escrow using the Marlowe Runtime's REST API
      • Lesson 7.9: Swap contract using the Marlowe Runtime's REST API
    • Lecture 8
      • Lesson 8.1: Introduction to Lecture 8
      • Lesson 8.2: The Private Testnet
      • Lesson 8.3: Plutus and Staking
      • Lesson 8.4: Trying Stake Validators on the Private Testnet
      • Lecture 8 Homework Assignment
    • Lecture 9
      • Lesson 9.1: Creating our own Stablecoin Dapp
      • Lesson 9.2: Using our Stablecoin Dapp UI
      • Lesson 9.3: Stablecoin's Oracle
      • Lesson 9.4: Deploying Stablecoin's Reference Scripts
      • Lesson 9.5: Minting Stablecoins
      • Lesson 9.6: Burning Stablecoins and Liquidating Positions
      • Lesson 9.7: Testing our Stablecoin's scripts
      • Lecture 9 Homework Assignment
    • Lecture 10
      • Lesson 10.1: Developing a Dapp with MeshJS and PluTs (Typescript)
      • Lesson 10.2: Developing smart contracts with Plu-Ts (Typescript)
      • Lesson 10.3: Developing smart contracts with OpShin and PyCardano (Python)
      • Lesson 10.4: Developing smart contracts with Plutarch (Haskell)
      • Lesson 10.5: Aiken Hello World (CLI version)
Powered by GitBook
On this page
  1. Lectures
  2. Lecture 6

Lesson 6.3: Unit Testing a Smart Contract

PreviousLesson 6.2: Introduction to the Plutus Simple Model LibraryNextLesson 6.4: Property Testing a Smart Contract

Last updated 1 year ago

Welcome to Lesson 6.3! In this lesson, you'll learn how to use unit testing in smart contacts.

After completing this lesson, you'll be able to:

  • Explain how unit test works in Cardano.

  • Define unit test for Cardano smart contracts.

To learn more about the topics covered in this lesson, we encourage you to review the following resources:

Collaborate with the Pioneers Community


Remember that you can interact with the participants of the PPP through the by joining the channels under the Plutus Pioneers category.

If during the program you have questions about Plutus, we invite you to share them at by adding the plutus-pioneer-program tag to your question. The IOG's Education Team members will monitor these questions to support your learning journey. Whenever you share a question at CSE, you're helping to build up the Cardano and Plutus development knowledge base.

This work is licensed under a .

IOG's technical community on Discord
Cardano Stack Exchange (CSE)
Creative Commons Attribution 4.0 International License
How can I write unit tests for Plutus contracts?
Testing smart contracts on Cardano
TxInfo Docs
Creative Commons License BY 4.0