不会引发异常

时间:2011-10-22 14:18:54

标签: python django exception

我的代码如下:

def getAllVehicles(self):
    try:
        vehobj = Vehicles.objects.all()            
    except VehicleDoesNotExists, e:
        logger.debug("Exception in getAllVehicles() is :::: %s ", e)
    return vehobj

这是我的测试用例:

def test_getAllVehicles(self):
    Vehicles.objects.all().delete()
    instance = Vehicles()
    self.assertRaises(VehicleDoesNotExists, instance.getAllVehicles)

永远不会提出异常,但我要求:

 Vehicles.objects.all() 

提出例外。
代码覆盖率要求我执行except块。

1 个答案:

答案 0 :(得分:6)

Vehicles.objects.all()会给你一个空列表......这是正确的行为。如果你想引发一个例外,你可以自己测试一个空列表和raise VehicleDoesNotExists(...) ......但我不明白你为什么要这样做。