Django-packageutils є Django засіб збору для упаковки Django додаток NBSP & ;. Наступні функції доступні.
1. UnitTest утиліта для запуску з setup.py
2. UnitTest утиліта для динамічного додавання моделях, використовуваних при випробуванні
3. Автоматичне створення користувача протягом команди SyncDB
Як встановити
Використовуйте пипсов COMAND або easy_install:
пункт встановити Django-packageutils
Дерево Довідника передбачається,
Django-Имя_Пакета
І NBSP; + - setup.py
І NBSP; + - РЕЛІЗ-версія # використовується для мерзотника версій
І NBSP; + - Имя_Пакета # ваш пакет
І NBSP; + - __init__.py
І NBSP; + - models.py # або що-
і NBSP; + - тести
І NBSP; + - __init__.py
І NBSP; + - test_models.py # або що-
І NBSP; + - TestApp # App потрібно тільки в тестах цього пакету
І NBSP; + - __init__.py
І NBSP; + - models.py
І NBSP; + - тест # Django проект для тестування
І NBSP; + - __init__.py
І NBSP; + - settings.py
І NBSP; + - manage.py
І NBSP; + - urls.py
І NBSP; + - runtests.py # для запуску тесту з setup.py
UnitTest утиліта для запуску з setup.py
Написати runtests.py в каталозі пакета, як:
імпорт OS
від packageutils.test імпорту get_package_runner
від packageutils.test імпортних run_tests
Захист runtests (багатослівність = 1, інтерактивний = True):
І NBSP; package_dir = os.path.dirname (__ FILE__)
І NBSP; test_runner = get_package_runner (package_dir, багатослівність, інтерактивний)
І NBSP; run_tests (test_runner, ['some_application_name'])
якщо __name__ == '__main__':
і NBSP; runtests ()
Додати тестів для вашого setup.py як:
встановити (
і NBSP; # ... деякі налаштовує
і NBSP; install_requires = [
І NBSP; 'поширювати', # рекомендується
І NBSP; 'Setuptools-ГИТ', # рекомендується
І NBSP; "Django-packageutils", # вимагається
І NBSP; # і деякі інші вимагається
І NBSP;],
І NBSP; "tests.runtests.runtests" test_suite =,
І NBSP; test_require = [
І NBSP; 'Джанго ",
І NBSP;],
)
Потім виконайте наступну команду:
Тест пітона setup.py
UnitTest утиліта для динамічного додавання моделей використовується тільки в тесті
З Django за замовчуванням TestCase, ви не можете додати необхідні моделей в рамках тесту. Іноді потрібні додаткові моделі для тестування Django пакет, то ви можете використовувати AppTestCase як:
від packageutils.testcase AppTestCase імпорту
від testapp.models імпорту статті
клас TestAppTestCase (AppTestCase):
І NBSP; # додатка потрібно тільки в цьому тесті
і NBSP; INSTALLED_APPS = [
І NBSP; 'packagename.tests.testapp',
І NBSP;]
І NBSP; # проміжне програмне потрібно тільки в цьому тесті
і NBSP; MIDDLEWARE_CLASSES = [
І NBSP; 'testapp.middleware.SomeMiddlewareRequired',
І NBSP;]
І NBSP; Def test_creation (само):
І NBSP; стаття = Article.objects.create (назва = 'Foo')
І NBSP; стверджувати Article.objects.filter (Title = 'Foo') існує ().
Автоматично створювати користувацькі межах команди SyncDB
Додати packageutils.syncdb.autouser в INSTALLED_APPS то адміністратор користувача створюється автоматично протягом команди SyncDB (пароль буде встановлений як 'Admin')
Вимоги
- Python
- Django
Коментар не знайдено