Django(6)-django项目自动化测试

这篇具有很好参考价值的文章主要介绍了Django(6)-django项目自动化测试。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Django 应用的测试应该写在应用的 tests.py 文件里。测试系统会自动的在所有以 tests 开头的文件里寻找并执行测试代码。
我们的 polls 应用现在有一个小 bug 需要被修复:我们的要求是如果 Question 是在一天之内发布的, Question.was_published_recently() 方法将会返回 True ,然而现在这个方法在 Question 的 pub_date 字段比当前时间还晚时也会返回 True(这是个 Bug)。
https://docs.djangoproject.com/zh-hans/4.2/intro/tutorial05/

polls/test.py

import datetime

from django.test import TestCase
from django.utils import timezone

from .models import Question


class QuestionModelTests(TestCase):
    def test_was_published_recently_with_future_question(self):
        """
        was_published_recently() returns False for questions whose pub_date
        is in the future.
        """
        time = timezone.now() + datetime.timedelta(days=30)
        future_question = Question(pub_date=time)
        self.assertIs(future_question.was_published_recently(), False)

运行

$ python manage.py test polls

Django(6)-django项目自动化测试,Django,django,sqlite,python
自动化测试的运行过程:

python manage.py test polls 将会寻找 polls 应用里的测试代码
它找到了 django.test.TestCase 的一个子类
它创建一个特殊的数据库供测试使用
它在类中寻找测试方法——以 test 开头的方法。
在 test_was_published_recently_with_future_question 方法中,它创建了一个 pub_date 值为 30 天后的 Question 实例。
接着使用 assertls() 方法,发现 was_published_recently() 返回了 True,而我们期望它返回 False。
测试系统通知我们哪些测试样例失败了,和造成测试失败的代码所在的行号。

修复缺陷:
polls/models.py

def was_published_recently(self):
    now = timezone.now()
    return now - datetime.timedelta(days=1) <= self.pub_date <= now

再次运行测试,通过。
Django(6)-django项目自动化测试,Django,django,sqlite,python文章来源地址https://www.toymoban.com/news/detail-680523.html

到了这里,关于Django(6)-django项目自动化测试的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Django+vue自动化测试平台(7)-- 使用Selenium+vue实现WebUI自动化及结果展示

    Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera,Edge等。这个工具的主要功能包括:测试与浏览器的兼容性——测试应用程序看是否能够很好得

    2024年02月14日
    浏览(54)
  • 基于 HttpRunner + Django + Vue + Element UI 的接口自动化测试平台

    https://github.com/tahitimoon/LunarLink https://lunar-link-docs.fun 基于HttpRunner + Django + Vue + Element UI 的接口自动化测试平台,生产可用。 此外,非常感谢 花菜。没有 AnotherFasterRunner 就不会有 LunarLink 😃 🎨 Django 🎶 Django Rest framework 🎉 Vue.js 🎃 Element UI 🏐 django-celery-beat(定时任务) 🎲

    2024年04月11日
    浏览(41)
  • python django vue httprunner 实现接口自动化平台(最终版)

    后端地址: GitHub - 18713341733/test_platform_service: django vue 实现接口自动化平台 前端地址: GitHub - 18713341733/test_platform_front: Django vue实现接口自动化平台 1.2.1 环境准备 Python = 3.8.0 (推荐3.9+版本) nodejs = 14.0 (推荐最新) 或者 16,千万不要使用18(会报错) Mysql = 5.7.0 (可选,默认数据库

    2024年02月10日
    浏览(36)
  • Django实现接口自动化平台(八)测试报告reports序列化器及视图【持续更新中】

    上一章: Django实现接口自动化平台(七)数据库设计_做测试的喵酱的博客-CSDN博客 下一章: 官方文档: Serializers - Django REST framework apps/reports/serializers.py 1.1.1 代码解释: 1、  exclude: You can set the  exclude  attribute to a list of fields to be excluded from the serializer. For example: 2、read_o

    2024年02月09日
    浏览(45)
  • Django实现接口自动化平台(十一)项目模块Projects序列化器及视图【持续更新中】

    相关文章: Django实现接口自动化平台(十)自定义action names【持续更新中】_做测试的喵酱的博客-CSDN博客 本章是项目的一个分解,查看本章内容时,要结合整体项目代码来看: python django vue httprunner 实现接口自动化平台(最终版)_python+vue自动化测试平台_做测试的喵酱的博

    2024年02月16日
    浏览(41)
  • Django实现接口自动化平台(十四)测试用例模块Testcases序列化器及视图【持续更新中】

    相关文章: Django实现接口自动化平台(十三)接口模块Interfaces序列化器及视图【持续更新中】_做测试的喵酱的博客-CSDN博客 本章是项目的一个分解,查看本章内容时,要结合整体项目代码来看: python django vue httprunner 实现接口自动化平台(最终版)_python+vue自动化测试平台

    2024年02月17日
    浏览(37)
  • Django+Celery框架自动化定时任务开发

    本章介绍使用DjCelery即Django+Celery框架开发定时任务功能,在Autotestplat平台上实现单一接口自动化测试脚本、业务场景接口自动化测试脚本、App自动化测试脚本、Web自动化测试脚本等任务的定时执行、调度、管理等,从而取代Jenkins上的定时执行脚本和发送邮件等功能。** 自动化

    2024年04月15日
    浏览(44)
  • Python+Selenium自动化测试项目实战

    第 1 章 自动化测试 1.1、自动化测试介绍 自动化测试就是通过自动化测试工具帮我们打开浏览器,输入网址,输入账号密码登录,及登录后的操作,总的说来自动化测试就是通过自动化测试脚本来帮我们从繁琐重复的手工测试里面解脱出来,把时间和精力花到更好的地方去,

    2023年04月17日
    浏览(48)
  • Python Selenium3 自动化测试实战:构建高效测试项目

    💂 个人网站:【 海拥】【神级代码资源网站】【办公神器】 🤟 基于Web端打造的:👉轻量化工具创作平台 💅 想寻找共同学习交流的小伙伴,请点击【全栈技术交流群】 在当今软件开发领域,自动化测试成为确保软件质量和提高开发效率的关键步骤。本文将深入探讨如何使

    2024年02月05日
    浏览(43)
  • Django实现接口自动化平台(十)自定义action names【持续更新中】

    相关文章: Django实现接口自动化平台(九)环境envs序列化器及视图【持续更新中】_做测试的喵酱的博客-CSDN博客 深入理解DRF中的Mixin类_做测试的喵酱的博客-CSDN博客  python中Mixin类的使用_做测试的喵酱的博客-CSDN博客  本章是项目的一个分解,查看本章内容时,要结合整体项

    2024年02月16日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包