【发布时间】:2019-04-07 11:36:35
【问题描述】:
定义一个鼻子测试方法test_circlearea_with_min_radius,它创建一个半径为0的圆c2,并检查它的计算面积是否与值0匹配
我已经编写了下面提到的代码,但仍然没有得到想要的输出:
import math
from circle import Circle
from nose.tools import assert_raises
from nose.tools import assert_equal
class Circle:
def __init__(self,radius):
if not isinstance(radius,(int,float)):
raise TypeError("radius must be a number")
if not 1000>=radius>=0:
raise ValueError("radius must be between 0 and 1000 inclusive")
self.radius = radius
def area(self):
return round(math.pi*self.radius**2,2)
def circumference(self):
return round(2*math.pi*self.radius,2)
class TestCircleArea:
def test_circlearea_with_random_numeric_radius(self):
c1=Circle(2.5)
assert_equal(c1.area(),19.63)
def test_circlearea_with_min_radius(self):
c2=Circle(0)
assert_equal(c2.area(),0)
【问题讨论】:
-
我能够让你的测试在鼻子测试中运行良好。您如何尝试运行测试?如果您的上述代码位于名为 test.py 的文件中,您应该能够使用
nosetests test.py运行测试。 -
我正在尝试使用 katacoda 完成 NOSE 测试。我无法通过它。我会更新我的代码。请建议
标签: python python-3.x nose