---
{"type":"list","title":"How to audit a smart contract?","listId":63220,"canonicalUrl":"https://listium.com/@dmitrym/63220/how-to-audit-a-smart-contract","visibleItemTotal":5,"creator":{"id":"dmitrym","name":"Dmitry Mishunin","url":"https://listium.com/@dmitrym"},"stats":{"views":382,"likes":1},"category":"technology & computing","publishedAt":"2021-10-10T14:24:41.963Z","updatedAt":"2021-10-10T14:24:41.963Z","fields":[{"id":0,"name":"Item","type":"PrimaryText"},{"id":2,"name":"Image","type":"Image"},{"id":1,"name":"text","type":"Text","format":"long"}]}
---

# How to audit a smart contract?

By [Dmitry Mishunin (@dmitrym)](https://listium.com/@dmitrym)

382 views · 1 like  
Published 10 October 2021 · Updated 10 October 2021

Category: technology &amp; computing

A smart contract is a program (code) that runs on a blockchain. It automatically acts under specific conditions. The most important task when developing contracts is to ensure a high level of security and code quality. Therefore, before implementing it, you need to check the code for errors and inaccuracies. There are several effective ways to check a smart contract.

## Items

### 1. [1- Refer to smart contract auditors](https://listium.com/@dmitrym/63220/how-to-audit-a-smart-contract/0/1-refer-to-smart-contract-auditors)

Item ID: `0`

- Image: ![Image](https://img.listium.com/images/width=800,height=800,fit=scale-down,format=webp/l/jyglkvajkb1j9pc0qf3h.png)
- text: Smart contract auditing is a process during which experts carefully study the code to identify errors, vulnerabilities, and risks even before launch. Validation helps prevent critical issues. At the same time, the \[smart contract audit cost\](https://hashex.org/smart\_contracts\_and\_audit) is low. Do not skimp on audit, it will save you from unforeseen waste.

### 2. [2 - Conduct unit testing](https://listium.com/@dmitrym/63220/how-to-audit-a-smart-contract/5/2-conduct-unit-testing)

Item ID: `5`

- Image: ![Image](https://img.listium.com/images/width=800,height=800,fit=scale-down,format=webp/l/qotlhyukxrrwojc47jna.png)
- text: If you do not want to contact smart contract audit companies, then you can test the code yourself (or by hiring several developers). This is not the best option, but it has a right to life. The first step is testing individual parts of the smart contract.

### 3. [3 - Regression testing](https://listium.com/@dmitrym/63220/how-to-audit-a-smart-contract/2/3-regression-testing)

Item ID: `2`

- Image: ![Image](https://img.listium.com/images/width=800,height=800,fit=scale-down,format=webp/l/ko6gd9fvwmtpof5egiou.png)
- text: These are the same tests, but using previously tested code. However, this is already an updated contract code. This is what the code will look like after making the appropriate adjustments.

### 4. [4 - Conduct integration tests](https://listium.com/@dmitrym/63220/how-to-audit-a-smart-contract/8/4-conduct-integration-tests)

Item ID: `8`

- Image: ![Image](https://img.listium.com/images/width=800,height=800,fit=scale-down,format=webp/l/sdczc9og3yknjhl9gqco.png)
- text: Do your research on how modules and contracts interact with each other. In fact, this is a test of the system's operation.

### 5. [5 - The last step is formal testing](https://listium.com/@dmitrym/63220/how-to-audit-a-smart-contract/9/5-the-last-step-is-formal-testing)

Item ID: `9`

- Image: ![Image](https://img.listium.com/images/width=800,height=800,fit=scale-down,format=webp/l/lhw2kixuqyumyh3isis4.png)
- text: Smart contracts are checked for compliance with the documentation.
