1. Тестирование с assert:
```python
def square(x):
return x * x
assert square(2) == 4
assert square(-3) == 9
```
2. Тестирование с unittest:
```python
import unittest
class TestMath(unittest.TestCase):
def test_square(self):
self.assertEqual(square(3), 9)
if __name__ == "__main__":
unittest.main()
```
3. Документация функции:
```python
def greet(name):
"""Функция приветствует пользователя по имени."""
return f"Привет, {name}"
```
1. Напишите 3 функции и протестируйте их с помощью assert.
2. Реализуйте модуль math_utils.py и создайте для него модуль test_math_utils.py с тестами.
3. Оформите документацию (docstring) для каждой функции.
4. Используйте unittest для тестирования класса Calculator с методами add, subtract, multiply, divide.
1. Настройте структуру проекта:
project/
├── utils/
│ └── logic.py
├── tests/
│ └── test_logic.py
├── main.py
2. Добавьте в logic.py минимум две функции и протестируйте их в test_logic.py.
3. Создайте файл README.md с описанием проекта.
4. Используйте flake8 или black для проверки стиля кода.
1. В чём разница между unittest и pytest?
2. Как задокументировать функцию в Python?
3. Что такое модульное тестирование?
4. Зачем нужна структура проекта?
5. Какие инструменты обеспечивают форматирование и проверку кода?