【发布时间】:2017-02-10 20:37:32
【问题描述】:
我有执行计算的同一函数的三个不同版本。给定相同的输入,所有三个将产生相同的输出。但是,不同之处在于这三个函数的实现方式不同,并且在不同情况下的表现可能更好/更差。
类比就像拥有 3 种不同的排序功能。如何使用鼻子测试编写单元测试以免重复自己?
def sort_a(array):
"""
sort using and return
"""
return sorted_array
def sort_b(array):
"""
sort using and return
"""
return sorted_array
def sort_c(array):
"""
sort using and return
"""
return sorted_array
我的测试可能如下所示:
class TestCore:
def test_sort_a_positive_vals(self):
# run test
def test_sort_a_negative_vals(self):
# run test
def test_sort_b_positive_vals(self):
# run test
def test_sort_b_negative_vals(self):
# run test
def test_sort_c_positive_vals(self):
# run test
def test_sort_c_negative_vals(self):
# run test
感觉这里有很多冗余。
【问题讨论】:
标签: python unit-testing nose