Тестируем асинхронный код с помощью PyTest (перевод)
|
|
Понедельник, 04 Сентября 2017 г. 15:21
+ в цитатник
При подготовке материала для
курса, нам периодически попадаются интересные статьи, которыми хотелось бы поделиться с вами!
Автор Stefan Scherfke
“Testing (asyncio) coroutines with pytest”
PyTest — отличный пакет для тестирования на Python, и с давних пор один из моих любимых пакетов в целом. Он значительно облегчает написание тестов и обладает широкими возможностями по составлению отчетов о непройденных тестах.
Тем не менее, на момент версии 2.7, он менее эффективен в тестировании (asyncio) подпрограмм. Поэтому не стоит пытаться их тестировать таким способом:
# tests/test_coros.py
import asyncio
def test_coro():
loop = asyncio.get_event_loop()
@asyncio.coroutine
def do_test():
yield from asyncio.sleep(0.1, loop=loop)
assert 0 # onoes!
loop.run_until_complete(do_test())
В таком методе много недостатков и излишеств. Единственные интересные строки — те, что содержат операторы yield from и assert.
Читать дальше ->
https://habrahabr.ru/post/337108/
Метки:
author Tully
python
блог компании отус
otus
pytest
testing
-
Запись понравилась
-
0
Процитировали
-
0
Сохранили
-