Pular para o conteúdo. Ir para a navegação
Ações do site
Opções do usuário

TcheZope.org

Ações do documento

Teste Unitário

Um dos melhores investimentos que você pode fazer é aprender como se deve trabalhar com um teste unitário. Trabalhar sem teste unitário é o maior risco, e em grandes projetos - infração irresponsável.

CAIXA Software Livre

Baseado na palestra dada por Joel Burton na conferência de Plone em Viena, este tutorial discute algumas das melhores práticas para o desenvolvimento em Plone. Se você estiver fazendo o desenvolvimento de um site com Plone e quiser manter sua saúde, esta é a melhor leitura. Requer alguma familiaridade com o Zope e o Plone.
Página 8 de 9.

Testando

PloneTestCase faz isto facilmente

Economiza um pouco de tempo para muito de preocupação

Pensar amplamente sobre os benefícios

Por exemplo, os bons testes permitirão reusar mais seu código, porque você terá a confiança para fazer assim.

Olhar um produto com boa evidência de testes &mdash tal como ATContentTypes

Mechanize-driven para testes de elementos da interface

Considerar faturar separadamente isto para seus clientes

Modelo para a instalação de teste

Modelo para a instalação de teste para PloneHelpCenter:

class PHCSiteTestCase(ArchetypesTestCase.ArcheSiteTestCase):

   """Test structure for PHC"""

   def afterSetUp(self):

         ArchetypesTestCase.ArcheSiteTestCase.afterSetUp(self)

  self._portal = self.app.portal

        # login as manager

        user = self.getManagerUser()

        newSecurityManager(None, user)

  self._portal.invokeFactory(type_name='HelpCenter',

            id='helpctr')

        self._hc=getattr(self._portal, 'helpctr')

   def beforeTearDown(self):

  ArchetypesTestCase.ArcheSiteTestCase.beforeTearDown(self)

  noSecurityManager()

  del self._hc

Modelo de Teste

Modelo de teste para o PloneHelpCenter

class TestFAQ(PHCTestCase):

    """Test those parts of FAQ and FAQ Folder that don't

    require a real site framework. Allows tests to run faster

    """

    def afterSetUp(self):

        PHCTestCase.afterSetUp(self)

        self._dummy = FAQ.HelpCenterFAQ(oid='dummy')

        self._dummy.initializeArchetype()

   def test_answerSTX(self):

        dummy = self._dummy

        dummy.setAnswer(example_stx, mimetype='text/structured')

        answer=no_whitespace.sub('',dummy.getAnswer())

        self.failUnless(answer==example_html, 'Value is %s' % answer)

Mais informações sobre teste unitário

Lotes material e dos tutoriais disponíveis na WEB

Pegue a apresentação "Unit Testing Zope for Fun and Profit" de Stefan Holek para a EuroPython

Um livro muito bom é Unit Testing book de Kent Beck

 
por CAIXA Software Livre Última modificação 03/06/2007 17:06
Contribuidores: José Carlos Gaspar - tradução para o português, Joel Burton - autor do original; Kapil Thangavelu - Inspiração para colocar na base de dados e muito mais; Calvin Hendryx-Parker e David "Whit" Morriss - idéias e feedback; Alan Runyan Por liberar diversos produtos que ensinam “caminho certo”; Alexander Limi - Conversão do PloneHelpCenter e insistência.
Creative Commons
Navegação
Enquete
Como você efetiva sua participação comunitária?








Mais »