我是单元测试的新手,我正在写一个类来模拟针孔相机的行为。
我使用unittest模块在Python中进行了几次单元测试,而我的Camera类有一个lookAt方法,它可以看到某个点,即它旋转相机框架使其指向目标。 我还有一种将3D点投射到相机图片中的方法。
我的场景是我首先测试lookAt方法,然后如果测试通过,我使用lookAt方法让我的相机看一个立方体,然后将该立方体投影到我的相机的图片上(投影是在这里测试。)
单元测试模块中是否有可能让我在另一个测试中运行测试?或者我应该手工查看矩阵然后单独测试投影(我认为这将是最佳实践)?
答案 0 :(得分:1)
根据第一次测试中设置的条件,查看skipIf decorator并将其应用于您的相关测试。
@unittest.skipIf(condition, reason)
例如(来自上面的链接):
@unittest.skipIf(mylib.__version__ < (1, 3),
"not supported in this library version")
还有subTest(),但是文档描述了subTest的目的是&#34;当你的一些测试只有一些[原文如此]非常小的差异时。&#34;