Je suis runninig test avec Python Unittest. J'exécute des tests mais je veux faire des tests négatifs et je voudrais tester si un jet de fonction est une exception, ça passe mais si aucune exception n'est levée, le test échoue. Le script que j'ai est:Test avec Unittest Python
try:
result = self.client.service.GetStreamUri(self.stream, self.token)
self.assertFalse
except suds.WebFault, e:
self.assertTrue
else:
self.assertTrue
passe de ce alway comme vrai, même si parfaitement est le travail de la fonction. J'ai également essayé de diverses autres manières dont:
try:
result = self.client.service.GetStreamUri(self.stream, self.token)
self.assertFalse
except suds.WebFault, e:
self.assertTrue
except Exception, e:
self.assertTrue
Quelqu'un a-t-il des suggestions?
Merci
J'ai essayé assertRaises sans chance.
try:
result = self.client.service.GetStreamUri(self.stream, self.token)
self.assertRaises(WebFault)
except suds.WebFault, e:
self.assertFalse
except Exception, e:
self.assertTrue
Il passe toujours. Pour une raison quelconque, il n'essaie pas de faire l'instruction assertRaises
. J'ai aussi essayé: (La fonction doit échouer, mais le test doit passer)
try:
result = self.client.service.GetStreamUri(self.stream, self.token)
except suds.WebFault, e:
self.assertFalse
except Exception, e:
self.assertTrue
else:
self.assertFalse
Pour une raison quelconque, même lorsque la fonction transmet ne déclenche pas d'erreur. C'est toujours ce qui va à l'exception. À moins qu'il y ait une autre déclaration, alors ça va à ça.
a trouvé une façon que son travail, mais il semble est une très mauvaise façon de faire les choses:
Quelqu'un peut-il suggérer un moyen plus propre de le faire?
try:
result = self.client.service.GetStreamUri(self.stream, self.token)
except suds.WebFault, e:
self.assertFalse
except Exception, e:
pass
try:
result==result
except:
result=None
if result==None:
assert True
else:
assert False
La documentation python pour assertRaises est bonne, et il y a un exemple sur la façon de l'utiliser. PS: http://www.angryflower.com/bobsqu.gif –