在Django项目中,我进行了一些测试,检查URL是否使用了特定的基于类的视图。我有这样的看法:
from django.views.generic import TemplateView
class HomeView(TemplateView):
template_name = "home.html"
而这个测试是:
from django.test import TestCase
from django.urls import resolve
from myapp import views
class UrlsTestCase(TestCase):
d
我有一些特殊的情况需要在django中测试。我正在尝试通过编写自己的测试用例来扩展现有的django测试。这是我目前正在做的事情。
from django.tests import TestCase
# define my own method as a function
def assertOptionsEqual(self, first, second):
# logic here
pass
# Attach the method to the TestCase class. This feels inelegant!
TestCase.assertOptionsEqu
对于带有默认值字段的简单模型,我有一个简单的create视图。我想通过只提供没有默认值的字段来测试这个设置。测试失败,因为数据库中没有创建任何对象。在使用了打印之后,我知道以下内容:模型clean()传递,并附带默认值。响应声明“此字段是必需的”。maxVar和minVotes。(同时发送这两个值可以让测试通过。)
失败的测试是:
from django.test import TestCase
from django.utils import timezone
from django.core.urlresolvers import reverse
import datetime
from
正如许多人可能已经意识到的那样,正确验证电子邮件地址可能是一场噩梦。您可以整天搜索符合当前RFC标准的C# regex,并且会找到不同的regex表达式,这些表达式会给出不同的结果。
如果您查看,您将发现不允许在本地部分的开始或结束处设置句点。也不允许连续两次。但是,下面的NUnit测试证明,System.Net.MailMessage允许为一些无效的电子邮件地址格式实例化MailMessage对象。
[Test]
[TestCase(@"foobar@exampleserver")] //technically valid from the wiki article
[Tes
我发现了一件奇怪的事,我很想知道为什么会发生这种事。我在Junit 4.11中使用maven surefire插件( 2.12.4 )。当我想使用@Category注释来禁用某些测试时。奇怪的是,它只在不扩展TestCase的测试中正确工作。对于不扩展TestCase的测试,我只能将注释放在要运行/禁用的测试方法上,但对于其他测试,它会禁用类中的所有测试。示例:命令行:mvn test -Dgroups=!testgroups.DisabledTests只对第一个代码段运行测试B:
import static org.junit.Assert.*;
public class DataTest
我试图运行下面的测试,但是我不知道为什么它不能工作,因为当测试运行时,会创建一个测试db,这意味着新创建的项得到一个id为1,但我仍然得到一个没有任何对象匹配查询的错误
模型
from django.db import models
# Create your models here.
class Post(models.Model):
text = models.TextField()
def __str__(self):
return self.text[:50]
测试
from django.test import TestCase
from .
我在2015中使用Django 1.10.5。我的项目正在虚拟环境中运行。我正在遵循初学者教程。该项目运行良好,但当我尝试从Visual“测试资源管理器”运行单元测试时,它们会出错:"django.core.exceptions.AppRegistryNotReady: App尚未加载“。
这是我的考试课:
import datetime
from django.test import TestCase
from django.utils import timezone
from .models import Question
class QuestionTestCase(TestC
我将Django 1.7项目更新为Django 1.8,现在运行测试时会出现错误(这是django.test.TestCase的子类)。
Traceback (most recent call last):
File "env\lib\site-packages\django\test\testcases.py", line 962, in tearDownClass
cls._rollback_atomics(cls.cls_atomics)
AttributeError: type object 'SomeTests' has no attribut
我有点困惑,为什么我们的新操作在使用Savon gem时没有被获取,而在使用简单的curl命令时却被获取了。
例如,使用Savon时
@client = Savon.client(wsdl: "#url-here", basic_auth: %w(username password))
@client.operations
:operation_name
# At this point i expect the operation to be OperationName
当我运行curl请求时
curl #url-here --user username:password
在X
我是unittest的新手。我试图跳过基于列表中的值的测试用例。
class UESpecTest(unittest.TestCase):
global testcases_exec_list
testcases = []
testcases = testcases_exec_list
@unittest.skipIf('0' not in self.testcases, "Testcase input not given")
def test_retrieve_spec_info(self):
read_
我有一些写到django.test.TestCase对象中的方法,我想从我的实际数据库上的manage.py shell运行它们。但是,当我尝试实例化TestCase对象来运行测试方法时,我得到了这个错误:
ValueError: no such test method in <class 'track.tests.MentionTests'>: runTest
有没有办法实例化TestCase对象?或者,有没有办法对非测试数据库运行测试方法?
我正在尝试编写经典的蛇游戏。我有逻辑工作(吃饭,成长,移动等)。现在我想添加一些漂亮的图形。到目前为止,我用下面的代码制作了一些丑陋的图形:(伪代码)
void drawWorld(const std::vector<Tileable*> world_map) {
for each Tileable {
get position of Tileable
get color of Tileable
draw rectangle at position with color
}
}
类平铺表示蛇地图上的对象->
谁能给我解释一下如何正确测试Postgres DB错误,特别是IntegrityError。例如,我有下一个测试:
class TestSlugs(TestCase):
# This slug must be unique
b = BookPublisher(slug=self.duplicate_slug)
self.assertRaises(IntegrityError, b.save)
#check if there's only one BookPublisher
self.assertEquals(BookPublisher.obje
我第一次使用django单元测试。下面是我代码的缩小版本。
我的假设是,setUp函数将对每个TestCase类调用一次。但是,当我运行python manage.py测试命令时,每个测试函数都会调用一次setUp函数。
我是做错了什么,还是我的假设有什么不对?
class SampleTest(TestCase):
"""
This class assumes an archiver setup with
add available at localhost:9101
query availabl
我有一个Django模型,其中包含一个重写的保存方法,以确保只为该模型的一个实例同时设置一个特殊字段(标志)。
class MyModel(models.Model):
flag = models.BooleanField(default=False)
def save(self, *args, **kwargs):
if self.flag:
for o in MyModel.objects.filter(flag=True):
if o != self:
o.
我仍然在使用Django 1.2.1,我认为在较新的Django中,我们不需要先使用import unittest,然后再使用unittest.TestCase。
插图
import unittest
class TestThis(unittest.TestCase):
from django.utils.unittest import TestCase
class TestThis(TestCase):
from django.test import TestCase
class TestThis(TestCase):
根据的说法,第二种方法是稍微更有效。
下面是显示这些关系的:
这是我的tests.py文件:
from django.test import TestCase
from .models import *
from django.contrib.auth.models import User
class ArticleTestCase(TestCase):
@classmethod
def setup(self):
Article.objects.create(
article_title="title1",
article_content="con
我对Python和Django都是新手,我正在通过创建一个饮食管理站点来学习,但是我在运行我的单元测试时完全失败了。我找到的所有文档和博客都说,只要可以从tests.py中发现它,tests.py与models.py和您的测试类子类TestCase位于同一个文件夹中,它就应该会被自动拾取。这对我不起作用,当我运行manage.py test <myapp>时,它找不到任何测试。
我从自己的包中开始我的所有测试,但已经将其简化为只在我的tests.py文件中的所有测试。当前的tests.py如下所示:
import unittest
from pyDietTracker.models
我对编码中任何种类的测试都很陌生。这是对我问题的跟进。答案证明,这种类型的模型方法不应该将对象保存到数据库中:
@classmethod
def create(cls, user, name):
list = cls(user=user, name=name)
return list
如果是这样的话,我很好奇为什么这次考试会通过,并且说一切都好?
from django.test import TestCase
from .models import List
from django.contrib.auth.models import User
class ListTes