Django文档(http://docs.djangoproject.com/en/1.3/topics/testing/#running-tests)表示您可以通过指定它们来运行单个测试用例:
$ ./manage.py test animals.AnimalTestCase
Run Code Online (Sandbox Code Playgroud)
这假设您在Django应用程序的tests.py文件中进行了测试.如果这是真的,那么这个命令就像预期的那样工作.
我在测试目录中测试了Django应用程序:
my_project/apps/my_app/
??? __init__.py
??? tests
? ??? __init__.py
? ??? field_tests.py
? ??? storage_tests.py
??? urls.py
??? utils.py
??? views.py
Run Code Online (Sandbox Code Playgroud)
该tests/__init__.py文件有一个suite()函数:
import unittest
from my_project.apps.my_app.tests import field_tests, storage_tests
def suite():
tests_loader = unittest.TestLoader().loadTestsFromModule
test_suites = []
test_suites.append(tests_loader(field_tests))
test_suites.append(tests_loader(storage_tests))
return unittest.TestSuite(test_suites)
Run Code Online (Sandbox Code Playgroud)
要运行测试我做:
$ ./manage.py test my_app
Run Code Online (Sandbox Code Playgroud)
尝试指定单个测试用例会引发异常:
$ ./manage.py test my_app.tests.storage_tests.StorageTestCase
...
ValueError: Test label 'my_app.tests.storage_tests.StorageTestCase' should be of the form app.TestCase or app.TestCase.test_method
Run Code Online (Sandbox Code Playgroud)
我试着做异常消息说的话:
$ ./manage.py test my_app.StorageTestCase
... …Run Code Online (Sandbox Code Playgroud) 可能重复:
如何在Python中将HTML实体转换为Unicode,反之亦然?
之间有什么区别warnings.warn(),并logging.warn()在他们做了什么样的条件和应如何使用?
我正在使用线程本地来存储当前用户和请求对象.通过这种方式,我可以轻松访问程序中任何位置的请求(例如动态表单),而无需传递它们.
为了在中间件中实现线程本地存储,我遵循了Django站点上的教程:http: //code.djangoproject.com/wiki/CookBookThreadlocalsAndUser?version = 18
此文档已经过修改,建议避免使用此技术:http: //code.djangoproject.com/wiki/CookBookThreadlocalsAndUser?version = 20
来自文章:
从设计的角度来看,threadlocals本质上是全局变量,并且受到全局变量通常需要的所有常见的可移植性和可预测性问题的影响.
更重要的是,从安全角度来看,threadlocals构成了巨大的风险.通过提供公开其他线程状态的数据存储,您可以为Web服务器中的一个线程提供一种方法来潜在地修改系统中另一个线程的状态.如果线程本地数据包含用户或其他与身份验证相关的数据的描述,则该数据可以用作授予对未授权用户的访问权的攻击的基础,或者暴露用户的私有细节.虽然有可能建立一个可以抵御这种攻击的线程局域系统,但是防御起来要容易得多,并且建立一个不受任何此类漏洞影响的系统.
我理解为什么全局变量可能很糟糕,但在这种情况下,我在自己的服务器上运行自己的代码,所以我看不出两个全局变量带来的危险.
有人可以解释涉及的安全问题吗?我问过很多人,如果他们阅读这篇文章并知道我正在使用线程本地人,他们会如何破解我的应用程序,但没有人能告诉我.我开始怀疑这是一个由分裂的纯粹主义者所持的观点,他们喜欢明确地传递物品.
在Mercurial中,您如何检查单个变更集?hg log -l 5将为我提供最新的5个变更集的摘要,但是如何获取一个变更集中更改的文件列表?我不想做差异.
几乎所有PostGIS中的功能都以ST开头.例如ST_Distance_Sphere,ST_GeomFromText,ST_Intersection等.
ST是什么意思?
http://www.postgis.org/documentation/manual-svn/PostGIS_Special_Functions_Index.html
python ×5
django ×2
cocoa ×1
emacs ×1
exec ×1
gis ×1
html ×1
javascript ×1
logging ×1
macos ×1
mercurial ×1
objective-c ×1
postgis ×1
spatial ×1
string ×1
terminology ×1
thread-local ×1
unit-testing ×1
warnings ×1