Django测试提示

2024-06-12 09:17:43 发布

您现在位置:Python中文网/ 问答频道 /正文

本着这个question的精神,我想知道是否有人对创建一个有用且“完整”的测试套件有什么建议(一个测试套件是否“完整”对于Django webapp。在

我的情况:我已经完成了一个原型,现在正致力于添加一些回归测试。我个人在大多数测试中使用django-webtest,其中一些URL测试使用Django test client。在

我对我的测试套件一点都不舒服。我远不是一个测试专家,所以我正在努力提高这方面的水平。任何提示,无论是否适用于我的情况,都将不胜感激。在


Tags: djangotestclienturl精神套件情况原型
2条回答

我建议阅读Django 1.1 Testing and Debugging by Karen M. Tracey。前五章介绍了Django中的测试。具体来说,您应该看看第5章,该章讨论了集成其他测试工具。以下是第5章内容的节选:

In this chapter, we:

  • Learned what hooks Django provides for adding test functions
  • Saw an example of how these hooks can be used, specifically in the case of adding code coverage reporting
  • Also explored an example where using these hooks was not necessary—when integrating the use of the twill test tool into our Django test cases

以下是Karen Tracey在其书的第5章中讨论的一些工具的链接:

生菜

您可能还想查看Lettuce。从网站:

Lettuce is a very simple BDD tool based on the Cucumber.

莴苣文档还有一个关于integrating Lettuce with Django的部分。在

测试提供(至少)4个问题的答案。在

  1. 我的实现正确吗?该应用程序是否符合文档记录的或者至少是大脑对其行为的印象。

  2. 我最新的零钱破了什么吗?

  3. 我的应用程序安全吗?无论是无辜的用户还是狡猾的人。

  4. 我的应用程序的性能是否足够?

对于#1,每个“功能”至少需要一个测试,对于主要功能可能需要多个测试。 如果您既是开发人员又是测试开发人员,那么在这里很容易出错。在

因为#2从编写测试套件和代码(并忠实地运行它)这一原则开始是关键。在

对于#3,请确保在正常程序定向操作之外访问的URL在权限方面的行为正常。你可能不希望一个用户能够修改或者甚至是另一个用户的信息,但是如果他们只需要输入../user/505并访问那里的所有信息,那就可能有问题了。我相信还有很多其他的东西需要在这里测试,所以请其他人加入进来。在

测试具有大量流量的应用程序的性能和扩展健壮性 我不太了解。在

查看Django本身的测试用例,可以了解应该测试的内容的粒度。Django trunk tests

Django文档有一篇关于测试的好文章:搜索文档进行测试。在

相关问题 更多 >