Documente Academic
Documente Profesional
Documente Cultură
Teste em Geral
Teste
Maneira de demostrar corretude do software
Fases
Teste de unidade
Teste de aceitao
Introduo
Nveis de teste:
Componentes
individuais
Teste
Unitrio
Grupos de
componentes
Teste de
Integrao
Sistema
como um todo
Teste de
Sistema
Teste de
Aceitao
Definio
Teste o processo de demostrao que o
programa funcion para certas entradas
Questo
Introduo
Funo ou procedure.
Uma classe (mtodo?)
Introduo
Introduo
Introduo
Quem testa?
Desenvolvedor?
Testador independente?
Importante:
Introduo
Introduo
Classes drivers
Classes stub
Introduo
(j)
Introduo ao PyUnit
O que ?
Introduo ao PyUnit
O que ?
Usando o PyUnit
Modulo Unittest
Framework de teste de unidade para Python
Incluido desde a verso Python 2.1
Baseado em PyUnit
Exemplo de PyUnit
Instalar PyUnit
Baixar unittest.py
Exemplo:
import unittest
class Test(unittest.TestCase):
def test_basic_addition(self):
self.failUnlessEqual(1+1,2)
if __name__=='__main__':
unittest.main()
Exemplo de PyUnit
O codigo a testar : example1.py
def reverse(aList):
aList.reverse()
return aList
O teste : example1_test.py
import unittest
class ReverseTests(unittest.TestCase):
def test_normal(self):
# do import here, makes test independent
from example1 import reverse
# can use python's normal asserts
assert reverse([1,2,3])==[3,2,1]
# or more robust and informative unittest options
self.assertEqual(reverse([1,2,3]),[3,2,1])
Mtodos teis
fail(mensagem)
assertEquals(x,y)
failUnless(expresso)
failIfExpression
assertRaises(Exception,callable, arg1, arg2,...)
Continuando ...
Os testes de unidade deveriam ser:
Atmico
Independente
Discreto
Concorrente
Ou talvez no..