如何测试自定义python社交身份验证管道?

如何测试自定义python社交身份验证管道?,python,django,django-testing,python-social-auth,django-tests,Python,Django,Django Testing,Python Social Auth,Django Tests,因此,我创建了一个自定义管道,用于保存从user.social\u auth模型的extra\u data属性中获取的用户社交档案数据。我已经对它进行了彻底的测试,但是是手动的 如何通过使用常规的django.test.TestCase,自动化定制管道的测试 如何测试管道是否正常工作?用户注册、登录等 我确实搜索了很多,但没有找到任何相关的类似问题,更不用说教程了 更新- 我把这个问题贴在网上,发现了这一点。现在,我只需要弄清楚如何将其用于我的目的。首先-假设管道机制工作正常,因此您无需进行测试

因此,我创建了一个自定义管道,用于保存从
user.social\u auth
模型的
extra\u data
属性中获取的用户社交档案数据。我已经对它进行了彻底的测试,但是是手动的

  • 如何通过使用常规的
    django.test.TestCase
    ,自动化定制管道的测试

  • 如何测试管道是否正常工作?用户注册、登录等

  • 我确实搜索了很多,但没有找到任何相关的类似问题,更不用说教程了

    更新-
    我把这个问题贴在网上,发现了这一点。现在,我只需要弄清楚如何将其用于我的目的。

    首先-假设管道机制工作正常,因此您无需进行测试

    第二,找出需要传递给函数的参数

    第三,写下你的测试

    使用Django测试用例,您的测试将如下所示

    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测试用例的工作原理


    从中可以看出,您不需要测试它与实际管道本身的匹配情况,这是管道需要知道的,您只需要担心您的功能。如果出于某种原因您需要一个管道对象,.

    对于“如何测试函数”这一一般问题,这是一个很好的解决方案,但我将推动一个更详细的解决方案。具体来说,一个测试如何定制?部分管道函数为。此装饰需要
    策略.storage.partial.store(current\u partial)
    的复杂参数。