因此,我创建了一个自定义管道extra_data
,用于保存从模型属性中获取的用户社交资料数据user.social_auth
。我已经对其进行了彻底的测试,但是是手动的。
如何使用常规自动测试我的自定义管道
django.test.TestCase
?如何测试正常管道是否工作?用户注册、登录等?
我确实搜索了很多,但没有找到任何相关的类似问题,更不用说教程或文档了。
更新- 我将问题作为问题发布在 github 上,发现存在用于管道测试的功能。现在我只需要弄清楚如何将它用于我的目的。
因此,我创建了一个自定义管道extra_data
,用于保存从模型属性中获取的用户社交资料数据user.social_auth
。我已经对其进行了彻底的测试,但是是手动的。
如何使用常规自动测试我的自定义管道django.test.TestCase
?
如何测试正常管道是否工作?用户注册、登录等?
我确实搜索了很多,但没有找到任何相关的类似问题,更不用说教程或文档了。
更新- 我将问题作为问题发布在 github 上,发现存在用于管道测试的功能。现在我只需要弄清楚如何将它用于我的目的。
首先 - 假设 Pipeline 机制有效,因此您无需对其进行测试。
第二 - 找出你需要传递给你的函数的参数。
第三 - 写你的测试。
使用 Django TestCase,您的测试将如下所示。
from mycustompipeline import pipelinefunction
class MyPipeLineTest(TestCase):
def setUp(self):
self.arg1 = Arg1() #both one and two could be mocks.
self.arg2 = Arg2()
def test_that_my_pipeline_does_something(self):
result = pipelinefunction(self.arg1, self.arg2)
self.assertTrue(result)
这将是你的基本结构,没有更多关于你的管道做什么的信息,这是尽可能好的。无论如何,您都会了解 Django TestCase 是如何工作的。
从中得到的好处是,您不需要测试它如何与实际管道本身结合在一起,这是让管道知道的,您只需担心您的功能。如果您出于某种原因需要一个管道对象,请模拟它。