Afim de iniciar a minha aventura no fantastico mundo de Python comecei inicialmente estudando a sintaxe da linguagem afim de agregar conhecimentos em um novo projeto no qual fui designado em minha empresa, logo de início foi amor a primeira vista.
Em seguida támbem comecei meus estudos com o framework "UnitTests" que nada mais é um framework para nos auxiliar a implementar testes unitários em nossa aplicação ou "Test-driven development" (em português, Desenvolvimento Dirigido por Testes). Para quem não tem conhecimento a respeito de TDD indicaria ler este ótimo artigo aonde aborada o conseito da prática e suas vantagens.
Bem vamos a um pequeno exemplo de teste.
Estarei usando um arquivo people.py para o código e test_people.py para os testes:
# -*- coding: UTF-8 -*-
#importo a biblioteca de testes e a minha classe pessoa
import unittest
from people import People
class PeopleTest(unittest.TestCase):
#este método é executado antes dos test
def setUp(self):
self.people = People('Pepe', 'f0rmig4', '30-08-1988')
#tests
def test_one(self):
self.people.sumPeople(10, 40)
def test_two(self):
self.people.sumPeople(10, 20)
if __name__ == "__main__":
unittest.main()Agora que temos alguns testes criados já podemos nossa classe pessoa.
class People:
def __init__(self, name, subname, age):
self.name = name
self.subname = subname
self.age = age
def sumPeople(self, var1, var2):
soma = var1 + var2
if soma >= 10:
return True
else:
return FalseAgora basta rodar nossa aplicação:
python test_people.py
E o resultado gerado deverá ser:
--------------------------------------------- Ran 2 tests in 0.000s OK
Bem este exemplo trivial foi apenas para mostrar a simplicidade da utilização do unittest. Com ele foi possível enxergar a simplicidade de implementação de cobertura de testes em nossas aplicações.
Que a força esteja com vocês.
Published Dec 22, 2010 by f0rmig4