# Integration Testing
This document is a definition of the integration tests we are thinking to develop in the Nightfall project.
## What tests to include?
The tests will be divided into these groups:
- `e2e`: complete test in which a transaction of each type is tested, where Nightfall SDK is used.
- Check deposit (different ERC20 same account)
- Check withdraw in different scenarios (in the cooling off period, after cooling off period, several withdraws in same/different period, ...)
- Check transfer (different accounts, different ERC20 tokens, non-existent address, multiple transfer in same/different batch)
- Check proposer functionality (register, start)
- Check challenger functionality (register, start)
- `test-real`: It is a test that runs on testnet to see that the basic functionalities work correctly.