„ Програмиране с Python“, ФМИ
Стефан Кънев & Николай Бачийски
16.02.2007г.
Примерно пакетче с модули
Нека разгледаме модула world
__init__.py
destroyer.py
god.py
Прости тестове: test_world.py
- клас наследник на
unittest.TestCase
- всеки негов метод започващ с
test
е отделен сценарий unittest.main
се грижи да намери подходящите класове и да извика подходящите им методи- просто!
setUp и tearDown
- понякога се налага да правим едно и също преди и след някой сценарий (метод на
TestCase
) - методът
setUp
наTestCase
ще се извика преди всеки сценарий - методът
tearDown
ще се извика след всеки сценарий def setUp(self):
self.w = world.World()
def tearDown(self):
self.w = None
Специален TestCase
world.destroyer.do
отпечатва разни неща, които не искаме да виждаме по време на тестовете- можем да си направим наследник на
unittest.TestCase
, който има желаната функционалност - и ползваме негов наследник в случаите, в които ни трябва тази функционалност
- Пример:
world.test.testcases
Под капака на unittest
TestLoader
TestSuite
TestResult
TextTestRunner
- Пример:
world.test
Документация—Интернет
- http://docs.python.org/ — обновена, удобна, ако знаете къде да търсите, това което ви трябва
- Library Reference—систематизирано описание на функции, модули
- Global Module Index—азбучен списък с подробни описания на модулите
- Language Reference—синтактични правила, твърдения, оператори
- често най-бързия начин да намерите, каквото ви е нужно е търсене в Google за
python <функция/метод/клас/…>
- Пример: python unittest
Документация—на вашия компютър
- Под Windows—Python Manuals в
chm
формат. Може да се търси, на практика в него е цялата HTML документация. - HTML документация—почти същата като на сайта (малко по-стара вероятно) и й лиспва търсене. Ще я намерите на собствения си компютър някъде, освен ако за вашата ОС не се разпространява отделно от самия Python.
pydoc
- Под Windows:
python.exe pydoc.py
Трябва да сложите в пътя директориитеPythonX.Y
иPythonX.Y/Lib
. - На другите места:
pydoc
pydoc <име>
—търси документация за тази функция, тема, модул ключова дума…pydoc -k <ключова дума>
—търси тази дума в описанията на всички модулиpydoc -p <порт>
—пуска HTTP сървър на вашия компютър и можете да разглеждате HTML документацията като отворите с браузъра сиhttp://localhost:<порт>/
pydoc -g
—отваря графична програма, в която може да търсите по ключова дума
Документация на наши модули
- Помните ли
docstring
-овете? def f(x, y):
"""f makes you happy putting a x into your y."""- Стига вашия модул да се намира някъде в пътя за търсене на Pythоn
- можете да погледнете в
sys.path
PYTHONPATH
- модулът
site
- можете да погледнете в
- при разглеждане с
pydoc
ще се вижда и документацията на вашите модули pydoc -w
—записва документация на диска в HTML формат
epydoc
- гъвкава система за генериране на документация
- поддържа много формати
- не е в стандартната Python дистрибуция
Няма коментари:
Публикуване на коментар