所以我目前正在尝试编写一个简单的测试,它只是将一个列表的值与另一个列表中的另一个列表进行比较。我对assertListEquals(a,b)
很熟悉,但我可能会错误地使用它或者遗漏了某些东西。当我运行模块时,我绝对没有得到测试套件的响应。没有错误代码或任何东西。也许你们可以帮助我。
这是我的testsuite
from MyList import main
import unittest
class TestSuite(unittest.TestCase):
def test_ValueContains(self):
print('test')
testList = [1,2,3]
value = MyList
self.assertListEqual(testList,value)
if __name__== "main":
unittest.main()
这是MyList.py
def main():
MyList = [1,2,3]
main()
我想要做的就是检查是否MyList == testList
并在运行测试时获得'确定'。
抱歉,我是单位测试的新手
答案 0 :(得分:1)
尝试修改代码:
def main():
MyList = [1,2,3]
return MyList
和
from MyList import main
import unittest
class TestSuite(unittest.TestCase):
def test_ValueContains(self):
print('test')
testList = [1,2,3]
value = main()
self.assertListEqual(testList,value)
if __name__== "__main__":
unittest.main()
问题是你在没有存储值的情况下运行main方法。这可以通过返回值而不是简单地分配它来实现。
您还需要更改
底部的if语句if __name__ == "main":
到
if __name__ == "__main__":
因为这是正确的命名约定。