⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

Django测试入门

使用Django测试框架编写单元测试和集成测试,保证代码质量。 · 难度:入门 · +15XP

为什么需要测试

自动化测试可以在代码变更后快速验证功能是否正常,减少回归缺陷。Django基于Python的unittest提供了丰富的测试工具。

测试用例结构

from django.test import TestCase
from .models import Article

class ArticleModelTest(TestCase):
    @classmethod
    def setUpTestData(cls):
        # 在所有测试方法前执行一次
        Article.objects.create(title='Test', content='Content')

    def test_title_content(self):
        article = Article.objects.get(id=1)
        self.assertEqual(article.title, 'Test')
        self.assertEqual(article.content, 'Content')

测试视图

from django.test import Client
from django.urls import reverse

class ViewTest(TestCase):
    def setUp(self):
        self.client = Client()

    def test_homepage_status(self):
        response = self.client.get(reverse('home'))
        self.assertEqual(response.status_code, 200)

常用断言

断言用途
assertEqual(a, b)检查a==b
assertTrue(x)检查x为True
assertContains(response, text)检查响应包含文本
assertTemplateUsed(response, template)检查使用了指定模板

练习提示: 补全starter_code中的测试类,添加一个测试方法验证Article创建后数据库中有1条记录。

Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 189 篇
0 完成
🔥 0