Python unittest测试setUp中的所有实例在属性中是否具有唯一编号



我正在编写测试,以测试数据库中假设的歌曲列表。

这些Song实例及其属性将在稍后的测试中单独测试,我相信使用setUp是停止重复的好方法:

class TestSong(unittest.TestCase):
def setUp(self):
self.song001 = Song("Shake It Off", "Taylor Swift","2000", "Pop", 150)
self.song002 = Song("Stronger", "Kelly Clarkson","2000", "Pop", 145)
self.song003 = Song("I Will Survive", "Gloria Gaynor","1970", "Disco", 140)

等等。。。。

我想测试为测试创建的所有实例都有songID,并且它们是唯一的,songID将只是一个递增的类变量,从init中的set开始(所以它应该是…(,但以后可能会改变。

因此,我认为我希望能够将所有setUp实例添加到一个列表中,然后在我的testrongongID_unique(self(中调用该列表:再往下,它将循环遍历歌曲列表,并对歌曲ID属性列表进行唯一测试,然后根据此通过或失败。

我很难理解一种将所有setUp实例添加到列表中而不写出来的好方法(这感觉非常错误(。

我使用pytest参数化夹具来解决这个问题。

最新更新