Django4.0 進(jìn)階測(cè)試主題-使用 Django 測(cè)試運(yùn)行器測(cè)試可重用的應(yīng)用程序

2022-03-17 13:37 更新

如果你正在編寫(xiě)一個(gè) 可重用的應(yīng)用程序,你可能想使用 Django 測(cè)試運(yùn)行器來(lái)運(yùn)行你自己的測(cè)試套件,從而從 Django 測(cè)試基礎(chǔ)設(shè)施中獲益。
常見(jiàn)的做法是在應(yīng)用代碼旁邊有一個(gè) tests 目錄,結(jié)構(gòu)如下:

runtests.py
polls/
    __init__.py
    models.py
    ...
tests/
    __init__.py
    models.py
    test_settings.py
    tests.py

讓我們看一下其中的兩個(gè)文件:

#!/usr/bin/env python
import os
import sys

import django
from django.conf import settings
from django.test.utils import get_runner

if __name__ == "__main__":
    os.environ['DJANGO_SETTINGS_MODULE'] = 'tests.test_settings'
    django.setup()
    TestRunner = get_runner(settings)
    test_runner = TestRunner()
    failures = test_runner.run_tests(["tests"])
    sys.exit(bool(failures))

這是運(yùn)行測(cè)試套件的腳本。它設(shè)置 Django 環(huán)境,創(chuàng)建測(cè)試數(shù)據(jù)庫(kù)并運(yùn)行測(cè)試。
為了清楚起見(jiàn),這個(gè)例子只包含了使用 Django 測(cè)試運(yùn)行器所需的最基本的內(nèi)容。你可能會(huì)要添加命令行選項(xiàng)來(lái)控制詳細(xì)程度,傳遞要運(yùn)行的特定測(cè)試標(biāo)簽等。

SECRET_KEY = 'fake-key'
INSTALLED_APPS = [
    "tests",
]

該文件包含運(yùn)行應(yīng)用程序測(cè)試所需的 Django 配置。
再次,這是一個(gè)最小的例子;你的測(cè)試可能需要其他設(shè)置才能運(yùn)行。
由于 tests 包在運(yùn)行測(cè)試時(shí)被包含在 ?INSTALLED_APPS ?中,你可以在它的 ?models.py? 文件中定義只用于測(cè)試的模型。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)