associação pythonbrasil[11] django zope/plone planet Início Logado como (Entrar)

Diferenças para "DocTest"

Diferenças entre as versões de 1 e 2
Revisão 1e 2004-07-19 18:47:59
Tamanho: 417
Editor: RudaMoura
Comentário:
Revisão 2e 2004-07-19 18:53:23
Tamanho: 1223
Editor: RudaMoura
Comentário:
Deleções são marcadas assim. Adições são marcadas assim.
Linha 1: Linha 1:
DocTest - teste automatizado de módulos utilizando DocStrings. DocTest - teste automatizado de módulos utilizando as DocStrings.
Linha 4: Linha 4:
direito o código que escreves. A linguagem Python é bem amiga nesse aspecto, direito o código que escreves. A linguagem Python é bem amiga nesse aspecto
Linha 20: Linha 20:

É uma definição bem documentada da função fatorial, digamos, no módulo
minhasfuncoes.py.

Uma preocupação maior seria sempre assegurar que o que escrevemos
está correto, mesmo quando procuramos melhorar ou até mesmo reescrever
a implementação de uma função ou classe em Python. Mas como certificar
que não quebramos nada enquanto mudamos?
A resposta está nos testes. Escolher bem o que testar e como testar
é uma arte em si. Repare nos exemplos que eu escrevi para
descrever a função fatorial, que tal eu usar esses exemplos
como teste?

Em vez de eu escrever a minha função test() e assim escrever
novamente esses exemplos dentro desta função, eu posso usar
o módulo doctest do Python, para automaticamente testar e assegurar
que o que eu escrevi ou reescrevi continua correto.

DocTest - teste automatizado de módulos utilizando as DocStrings.

Você que é bom programador e cuidadoso, aposto que procuras documentar direito o código que escreves. A linguagem Python é bem amiga nesse aspecto com a utilização de DocStrings. Por exemplo:

   1 def fat(n):
   2   """Calcula o fatorial de n.
   3   >>> f(0)
   4   1
   5   >>> f(5)
   6   120
   7   """
   8   if x == 0:
   9     return 1
  10   else:
  11     return x * f(x-1)

É uma definição bem documentada da função fatorial, digamos, no módulo minhasfuncoes.py.

Uma preocupação maior seria sempre assegurar que o que escrevemos está correto, mesmo quando procuramos melhorar ou até mesmo reescrever a implementação de uma função ou classe em Python. Mas como certificar que não quebramos nada enquanto mudamos? A resposta está nos testes. Escolher bem o que testar e como testar é uma arte em si. Repare nos exemplos que eu escrevi para descrever a função fatorial, que tal eu usar esses exemplos como teste?

Em vez de eu escrever a minha função test() e assim escrever novamente esses exemplos dentro desta função, eu posso usar o módulo doctest do Python, para automaticamente testar e assegurar que o que eu escrevi ou reescrevi continua correto.