Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
А что есть почитать по PHPUnit на русском?
Вы не тратите время на обдумывание кода (все поведение обдумывается на этапе написания тестов, код пишется только, чтобы их выполнить)
def f(x):
assert x > 1
i = 2
while i <= x:
if x % i == 0:
x /= i
yield i
else:
i += 1
>>> from my import f
>>> list(f(1))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "my.py", line 8, in f
assert x > 1
AssertionError
>>> list(f(3))
[3]
>>> list(f(4))
[2, 2]
>>> list(f(60))
[2, 2, 3, 5]
def f(x):
'''
>>> list(f(1))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "my.py", line 8, in f
assert x > 1
AssertionError
>>> list(f(3))
[3]
>>> list(f(4))
[2, 2]
>>> list(f(60))
[2, 2, 3, 5]
>>>
'''
assert x > 1
i = 2
while i <= x:
if x % i == 0:
x /= i
yield i
else:
i += 1
if __name__ == '__main__':
import doctest
doctest.testmod()
$ python my.py
$
$ python my.py
*******************
File "my.py", line 13, in __main__.f
Failed example:
list(f(60))
Expected:
[2, 2, 3, 6]
Got:
[2, 2, 3, 5]
*******************
1 items had failures:
1 of 4 in __main__.f
***Test Failed*** 1 failures.
В рамках одного проекта — или везде или нигде
Не каждый же раз вручную запускать каждый кусочек, который нужно проверить. Впрочем, может я что-то не так понял?
проще всего тестировать — как по мне, так прямо в IDE
Юнит-тестирование в PHP