Définir une classe d'essai de nez 'testcirclecreation' qui teste le comportement de la méthode de ' Définissez une méthode d'essai de nez 'test_creature_circle_with_numeric_radius', qui crée un cercle avec rayon 2.5 et vérifiez s'il s'agit de la valeur de rayon 2.5 p> li>
Définir une méthode d'essai de nez 'Test_creature_circent_with_negative_radius', qui vérifie si la demande d'erreur ValueError est soulevée avec le message d'erreur "Doit être compris entre 0 et 1000 incluse", tout en créant un cercle de rayon -2.5. p> li>
OL> 3.Define Méthode de test de nez 'Test_creature_circent_with_greaterthan_radius', qui vérifie si la demande de ValueError est soulevée avec le message d'erreur "Douce doit être compris entre 0 et 1000 incluse", tout en créant un cercle de rayon 1000.1 P> Je ne reçois pas la sortie attendue.
Veuillez suggérer p> code utilisé: p> CLASSCIRCLCLECRÉRATION (UNITESTEST.ESTASE): P>
def test_creating_circle_with_numeric_radius(self):
c1=Circle(2.5)
self.assert_equal(c1.radius,2.5)
def test_creating_circle_with_negative_radius(self):
c1=Circle(2.5)
self.assert_equal(c1.radius,2.5)
self.assert_raises(ValueError, Circle, -2.5)
def test_creating_circle_with_greaterthan_radius(self):
c1=Circle(2.5)
self.assert_equal(c1.radius,2.5)
self.assert_raises(ValueError, Circle, 1000.1)
def test_creating_circle_with_nonnumeric_radius(self):
c1=Circle(2.5)
self.assert_equal(c1.radius,2.5)
self.assert_raises(TypeError, Circle, 'hello')
3 Réponses :
Essais de classeCIRCRECREATION:
def test_creating_circle_with_numeric_radius(self):
c1=Circle(2.5)
assert c1.radius==2.5
def test_creating_circle_with_negative_radius(self):
c1=Circle(2.5)
assert c1.radius==2.5
with assert_raises(ValueError):
Circle(-2.5)
def test_creating_circle_with_greaterthan_radius(self):
c1=Circle(2.5)
assert c1.radius==2.5
with assert_raises(ValueError):
Circle(1000.1)
def test_creating_circle_with_nonnumeric_radius(self):
c1=Circle(2.5)
assert c1.radius==2.5
with assert_raises(TypeError):
Circle('hello')
Vous allez ici, cela devrait fonctionner
Il vaut mieux ajouter une explication au code. Donner directement au code n'est pas apprécié.
from proj.circle import Circle
from nose.tools import assert_raises, eq_
class TestingCircleCreation:
def test_creating_circle_with_numeric_radius(self):
c=Circle(2.5)
eq_(c.radius, 2.5)
def test_creating_circle_with_negative_radius(self):
with assert_raises(ValueError) as e:
c = Circle(-2.5)
eq_(str(e.exception), "radius must be between 0 and 1000 inclusive")
def test_creating_circle_with_greaterthan_radius(self):
with assert_raises(ValueError) as e:
c = Circle(1000.1)
eq_(str(e.exception), "radius must be between 0 and 1000 inclusive")
def test_creating_circle_with_nonnumeric_radius(self):
with assert_raises(TypeError) as e:
c=Circle("hello")
eq_(str(e.exception), "radius must be a number")
class TestCircleArea:
def test_circlearea_with_random_numeric_radius(self):
c1=Circle(2.5)
eq_(c1.area(), 19.63)
def test_circlearea_with_min_radius(self):
c2=Circle(0)
eq_(int(c2.area()), 0)
def test_circlearea_with_max_radius(self):
c3=Circle(1000)
eq_(c3.area(), 3141592.65)
class TestCircleCircumference:
def test_circlecircum_with_random_numeric_radius(self):
c1=Circle(2.5)
eq_(c1.circumference(), 15.71)
def test_circlecircum_with_min_radius(self):
c2=Circle(0)
eq_(int(c2.circumference()), 0)
def test_circlecircum_with_max_radius(self):
c3=Circle(1000)
eq_(c3.circumference(), 6283.19)