gpt4 book ai didi

python - 使用 assert 在 python 中引发单元测试

转载 作者:太空狗 更新时间:2023-10-30 02:01:47 25 4
gpt4 key购买 nike

目前我正在为我的类函数编写单元测试。

def test_getitem(self):
test1 = List(3)
for i in range(3):
test1.append(i)
self.assertEqual(test1[2], 2)

test1 = List(3)
for i in range(3):
test1.append(i)
self.assertRaises(IndexError, test1[4])

我现在遇到的问题是我代码的 self.assertRaises 部分。我不确定它是否是这样做的,但是当我运行 unittest 时,它会产生错误 Index out of range。按理说,应该是“OK”。

List 是我的类,List(3) 创建一个基于数组的列表。所以当我 test1.append(i) 时,它现在是 [0,1,2]

test1[2]是我类中调用getitem函数的方法,类似于self[index]

我想知道我是否正确地断言加注? self.assertEqual 没问题。

最佳答案

断言抛出的异常时应该使用with语句

def test_getitem(self):
test1 = List(3)
for i in range(3):
test1.append(i)
self.assertEqual(test1[2], 2)

test1 = List(3)
for i in range(3):
test1.append(i)
with self.assertRaises(IndexError):
test1[4]

关于python - 使用 assert 在 python 中引发单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46198244/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com