2016-10-06 28 views
0

我的PR在django-rest-framework中添加“混合分页”被拒绝的原因是最好在第三方软件包中。Python:如何在开发第三方软件包时搭载现有测试

所以我继续创建包结构,但在创建测试时陷入困境,如果你看看PR files changed,我的新测试只是扩展了现有的测试,并改为使用新的分页类。

+class TestCombinedPaginationPageNumber(TestPageNumberPagination): 
+ def setup(self): 
+  class ExamplePagination(pagination.HybridPagination): 
+   page_size = 5 
+ 
+  self.pagination = ExamplePagination() 
+  self.queryset = range(1, 101) 
+ 
+ 
+class TestCombinedPaginationLimitOffset(TestLimitOffset): 
+ def setup(self): 
+  class ExamplePagination(pagination.HybridPagination): 
+   default_limit = 10 
+   max_limit = 15 
+ 
+  self.pagination = ExamplePagination() 
+  self.queryset = range(1, 101) 

我无法工作,就一定能搭载在我自己的第三方测试这些测试,我不能远程扩展它,因为在安装包不包括测试文件。我试图复制特定的test_pagination.py文件,但收到很多错误。

回答

0

更正您无法包含pip install软件包中的测试。你需要克隆你想在本地复制的测试用例。

我试着复制特定的test_pagination.py文件,但得到了很多错误。

我建议从小开始。取一个你想复制的测试用例。复制只是一个,以及它依赖的任何进口。

更一般地说,您应该尝试专门测试包中添加的位,而不是重新测试REST框架的行为。例如,对于“分页样式之间的切换”,不要试图测试分页本身,而是测试切换行为。

希望有所帮助。如果您在编写测试用例时解决特定错误时遇到任何问题,请在REST框架邮件列表中大声呼喊。