tl.testing

Софтуер снимки:
tl.testing
Софтуер детайли:
Версия: 0.5
Дата на качване: 15 Apr 15
Розробник: Thomas Lotze
Разрешително: Безплатно
Популярност: 5

Rating: nan/5 (Total Votes: 0)

tl.testing предоставя различни услуги, които могат да бъдат използвани при писане на тестове & Nbsp;. Той е съвместим с Python версии 2.6 и 2.7.
<Силен> Пясъчните кутии на директории и файлове
При тестването на код, който променя директории и файлове, че е полезно да бъде в състояние да създаде и да инспектира извадка дърво на директории и файлове лесно. Модулът tl.testing.fs осигурява подкрепа за създаване на едно дърво от текстово описание, то обявата в същия формат и почисти след себе си.
В тест за док, тези съоръжения могат да бъдат използвани като това да създадете и списък на директория, файл и символична връзка:
>>> от tl.testing.fs внос new_sandbox, LS
>>> New_sandbox ("" ​​"
... Г Foo
... Е Foo / бар ASDF
... Л Баз -> Foo / бар
... "" ")
>>> LS ()
л Баз -> Foo / бар
г Foo
е Foo / бар ASDF
Вижте fs.txt файла намерен с изходния код за допълнителен съвет, включително как да се създаде и събаря тестове с файлова система пясъчници.
<Силни> Инсталиране на подлежащо на поискване изплащане скриптове
Някои функции едно да искате да тествате прави използването на външни програми като пейджър или текстов редактор. Модулът tl.testing.script осигурява помощни програми, които инсталират прости макет скриптове на места, където кодът да бъдат тествани ще ги намерите. Те предприемат поредица от Python код и създаване на обвивка скрипт, който определя пътя на Python, за да съвпада с тази на теста и се изпълнява кода.
Ето как може да се използва като макет скрипт в тест за док:
>>> От tl.testing.script внос инсталиране
>>> Script_path = инсталиране ("печат" A прост скрипт. "")
>>> Печат отворена (script_path) .read ()
#! ...

внос Сис
sys.path [:] = [...]

печат "A прост скрипт."
>>> Внос подпроцес
>>> Суб = subprocess.Popen (script_path, черупки = True, стандартния изход = subprocess.PIPE)
>>> Стандартния изход, STDERR = sub.communicate ()
>>> Печат стандартния изход
Един прост скрипт.
Вижте script.txt файла намерен с изходния код на допълнителни възможности за това как да инсталирате и достъпа макет скриптове, както и как да се късат, за които се ползва макет скриптове.
<Силен> Doc-тестване на графично съдържание от Кайро повърхности
Макар и да е прав-напред да сравнявате съдържанието на две Кайро повърхности в Python код, работа с графики е извън док тестове. Въпреки това, пакетът Мануел може да се използва за извличане на по-общи случаи за изпитване от текстов документ в същото време позволява да ги смесвате с док тестове по естествен начин.
Модулът tl.testing.cairo осигурява фабрика тестов пакет, който използва Мануел да изпълни графични тестове формулирани като преструктурира-текстови цифри. Надписът на такава фигура е трябвало да бъде буквално израз Python, чиято стойност е равна повърхност Кайро, както и на неговия образ се използва като тест очакването.
Това е начина, по повърхността може да се сравни с очакван образ в тест за док:
>>> Внос Кайро
>>> От pkg_resources внос resource_filename
>>> Имидж = resource_filename ("tl.testing", "testimages / correct.png")
.. :: Фигура TL / тестване / testimages / correct.png
& Nbsp; `` cairo.ImageSurface.create_from_png (изображение) ``
Вижте cairo.txt файла намерен с изходния код на допълнителни съвети и документация на възможно изхода тест.
<Силен> Работа с теми в теста код
Стандартната TestCase класа не събира грешки и неуспехи, които се появяват в други теми от основната един. Модулът tl.testing.thread осигурява класове конци и ThreadAwareTestCase клас да позволи точно това, както и някои други удобства за тестове, които се занимават с теми: предотвратяване на очакваните необработени изключения в теми да се печати с изхода тестове, теми за отчитане оставени чрез тест, работещ код в демон нишка, свързваща теми и преброяване на теми, започнати по време на провеждане на проучването е:
>>> Време внос
>>> Внос tl.testing.thread
>>> Клас SampleTest (tl.testing.thread.ThreadAwareTestCase):
...
... Def test_error_in_thread_should_be_reported (самостоятелно):
... С tl.testing.thread.ThreadJoiner (1):
... Self.run_in_thread (ламбда: 1/0)
...
... ДЕФ test_active_count_should_count_only_new_threads (само):
... С tl.testing.thread.ThreadJoiner (1):
... Self.run_in_thread (ламбда: time.sleep (0.1))
... Self.assertEqual (1, self.active_count ())
... Self.assertEqual (0, self.active_count ())
>>> Внос unittest
>>> Run (unittest.makeSuite (SampleTest))
================================================== ====================
ГРЕШКА: test_error_in_thread_should_be_reported (__builtin __ SampleTest.)
-------------------------------------------------- --------------------
Traceback (последното повикване последната):
& Nbsp; ...
ZeroDivisionError: целочислено деление или модул от нула
-------------------------------------------------- --------------------
Ран 2 теста в N.NNNs
Неуспешно (грешки = 1)
Виж файла thread.txt намерен с изходния код за допълнителни подробности за клас ThreadAwareTestCase.
<Силен> Изграждане тестови серии, които използват Мануел
Както Мануел предвижда някои мощни функции, в допълнение към стандартните doctests Мануел тестови серии са създадени малко по-различно от стандартните. The tl.testing.doctest модул изпълнява фабрика DocFileSuite, че може да се използва като стандартното но създава тестов пакет използване Мануел и позволява допълнителна конфигурация, свързана с Мануел, сред които възможността да се тълкува бележки под линия, които се използват, за да се направи с помощта на отхвърлената zope.testing.doctest:
>>> Sample_txt = запис ("sample.txt", "" "
... [#footnote] _
... >>> Х
... 1
...
... .. [#footnote]
... >>> Х = 1
... "" ")
>>> От tl.testing.doctest внос DocFileSuite
>>> размърда (DocFileSuite (sample_txt, бележки под линия = истина))
-------------------------------------------------- --------------------
Ран 1 тест в N.NNNs
ОК
>>> Sample_txt = запис ("sample.txt", "" "
... .. Код блок :: питон
... Х = 1
...
... >>> Х
... 1
... "" ")
>>> Внос manuel.codeblock
>>> Run (DocFileSuite (sample_txt, Мануел = manuel.codeblock.Manuel ()))
-------------------------------------------------- --------------------
Ран 1 тест в N.NNNs
OK

<силни> Изисквания :

  • Python

Подобен софтуер

lava-test-demo
lava-test-demo

15 Apr 15

TextTest
TextTest

18 Jul 15

rockload
rockload

11 May 15

Друг софтуер на разработчика Thomas Lotze

Ophelia
Ophelia

15 Apr 15

tl.pkg
tl.pkg

15 Apr 15

Коментари към tl.testing

Коментари не е намерена
добавите коментар
Включете на изображения!