Tiago, uma maneira de você testar os controllers é mockando eles ( http://martinfowler.com/articles/mocksArentStubs.html);
Os testes funcionais do Selenium são uma boa opção para esse tipo de teste também, mas ele é baseado em teste de aceitação e na visão do usuário em relação ao sistema, inclusive, é indicado que o usuário que escreva os testes de aceitação. Com mocks é uma abordagem mais técnica, na visão do desenvolvedor, válida também, mas eu prefiro a anterior. -- Marcus Cavalcanti 21 9144-5068 www.marcuscavalcanti.net/blog 2011/3/2 Tiago Davi <[email protected]> > hummm. > > Já ouvi falar nesse Selenium mas eu realmente estou começando agora com > testes e achei que deveria testar os controllers já que por exemplo tenho > controllers que processam outros métodos e models do Doctrine. > > Vou procurar entender essa diferença mais pra frente com mais tempo. > > Obg por compartilhar. > > Att. > > Em 2 de março de 2011 23:17, Eric Saboia <[email protected]> escreveu: > > Vou montar um projeto com CI 2.0 + Doctrine + PHPunit com exemplos >> >> O mais importante dos testes unitários é realmente o modelo, como o amigo >> Marcus falou >> >> Testes em controllers são chamados "testes de integração", onde vc envia >> um sinal e espera um retorno de um determinado tipo contendo determinados >> dados, esses testes são mais usados em serviços (web services), eu >> particulamente nunca precisei deles, pois pra aplicações normais, os testes >> funcionais (ou de aceitação) cobrem tanto as views quanto os controllers de >> forma satisfatória. >> >> Eu recomendo o uso do Selenium pra quem quiser se aventurar nos testes >> funcionais. Hoje é a ferramenta mais usada em todas as linguagens, e possue >> um Driver "maduro" pra PHP. >> >> Abraços! >> >> 2011/3/2 Tiago Davi <[email protected]> >> >> Sim consegui usar a integração do Eric mas antes disso sofri para instalar >>> o PEAR! essa lib da erro em quase todos os momentos de sua instalação e >>> sempre tem um macete ou outro que precisamos fazer para ir driblando os >>> erros e o SimpleTest comparado ao PHPUnit é realmente muito mais simples e >>> exibe os testes direto no navegador. >>> >>> Já uso o Doctrine integrado ao CI 2.0 e recomendo! Doctrine agiliza e >>> muito no processo de desenvolvimento mas tem que entender do ORM. >>> >>> Quando você entende o que o Doctrine pode fazer por você muita coisa do >>> CI você irá deixar de lado! >>> >>> Já não uso models nem validação nem nada disso do CI, faço quase tudo >>> pelo Doctrine e além disso ele permite testar meus models então só me >>> preocupo mesmo em testar minhas libs e alguns controllers principais. >>> >>> Hoje uso CI 2 + Doctrine + Modular Extensions (HMVC) + SimpleTest >>> >>> Criei aqui uma estrutura pronta inclusive com o MY_Controller como uma >>> lib de métodos que sempre vou precisar usar nos projetos e outra de helpers >>> úteis e esse modular permite que meus controllers conversem entre si sem >>> precisar herdá-los. >>> >>> Fico feliz em contribuir. >>> >>> Att. >>> >>> Em 2 de março de 2011 20:38, Nando Araujo <[email protected]>escreveu: >>> >>> Eu tenho interesse em usar TDD, testes unitários, etc.. >>>> Até tive um tempo estudando em cima do projeto que o Eric Saboia >>>> forneceu usando o CI_Unit, já experimentou? >>>> >>>> Eu vou ver se arranjo um tempo para integrar o Doctrine no CI 2.0 (não >>>> cheguei a mexer com o Doctrine, mas li um pouco a respeito e entendi por >>>> cima o funcionamento ORM e tal).. >>>> >>>> Vale a pena a gente trocar uma idéia a respeito.. >>>> Abraço >>>> >>>> Em 28 de fevereiro de 2011 22:36, Marcus Cavalcanti < >>>> [email protected]> escreveu: >>>> >>>> Hum... isso não é responsabilidade dos controllers, mas tudo bem. >>>>> >>>>> O que faria sentido testar nos controllers é o fluxo, mas aí vc poderia >>>>> mockar e testá-los. >>>>> >>>>> >>>>> -- >>>>> Marcus Cavalcanti >>>>> 21 9144-5068 >>>>> www.marcuscavalcanti.net/blog >>>>> >>>>> >>>>> 2011/2/28 Tiago Davi <[email protected]> >>>>> >>>>> Meus models são do Doctrine e organizo minha lógica toda em controllers >>>>>> e libs e de qualquer forma já consegui chamar controller, model e >>>>>> inclusive >>>>>> testar métodos dentro de módulos do hmvc (modular extensions) com >>>>>> simpletest >>>>>> e CI 2.0. >>>>>> >>>>>> Se alguém se interessar sobre isso é só avisar. >>>>>> >>>>>> Obg. >>>>>> >>>>>> Em 27 de fevereiro de 2011 01:30, Marcus Cavalcanti < >>>>>> [email protected]> escreveu: >>>>>> >>>>>> Não é não poder, é não fzer sentido. >>>>>>> >>>>>>> Controller não deve entender do seu negócio, não é ele a camada pra >>>>>>> isso. >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Marcus Cavalcanti >>>>>>> 21 9144-5068 >>>>>>> www.marcuscavalcanti.net/blog >>>>>>> >>>>>>> >>>>>>> 2011/2/26 Tiago Davi <[email protected]> >>>>>>> >>>>>>>> Vou dar uma lida depois nesse material, estou iniciando agora nos >>>>>>>> casos de teste. >>>>>>>> >>>>>>>> Mas acho estranho não poder testar um controller. >>>>>>>> >>>>>>>> Obg. >>>>>>>> >>>>>>>> Em 26 de fevereiro de 2011 18:44, Tiago Davi <tiago.asp.net@ >>>>>>>> gmail.com> escreveu: >>>>>>>> >>>>>>>> O que quer dizer com controller não tem RN? >>>>>>>>> >>>>>>>>> Eu só queria por exemplo testar se um controle retorna mesmo TRUE. >>>>>>>>> >>>>>>>>> Dai no meu teste eu faria $this->assertTrue("passando o método do >>>>>>>>> meu controle aqui"); >>>>>>>>> >>>>>>>>> Resumindo eu gostaria de testar meus controllers antes mesmo de >>>>>>>>> escreve-los e pra isso estou integrando o SimpleTest com CI, estou >>>>>>>>> sendo >>>>>>>>> ignorante em alguma coisa? >>>>>>>>> >>>>>>>>> Att. >>>>>>>>> >>>>>>>>> Em 26 de fevereiro de 2011 18:38, Marcus Cavalcanti < >>>>>>>>> [email protected]> escreveu: >>>>>>>>> >>>>>>>>> >>>>>>>>>> http://blog.caelum.com.br/tdd-e-sua-influencia-no-acoplamento-e-coesao/ >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> <http://blog.caelum.com.br/tdd-e-sua-influencia-no-acoplamento-e-coesao/>tem >>>>>>>>>> um outro artigo muito bom que ia te ajudar a clarear um pouco mais >>>>>>>>>> sobre >>>>>>>>>> isso, mas parece que o domínio está fora, de qualquer maneira, se >>>>>>>>>> você >>>>>>>>>> quiser tentar depois: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> http://www.team-oriented-programming.com/2010/06/30/tdd_relearning_to_code.html >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Marcus Cavalcanti >>>>>>>>>> 21 9144-5068 >>>>>>>>>> www.marcuscavalcanti.net/blog >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> 2011/2/26 Marcus Cavalcanti <[email protected]> >>>>>>>>>> >>>>>>>>>> Tiago, Controller não tem RN, logo não deve ser testado. >>>>>>>>>>> >>>>>>>>>>> O que eu disse que não faz sentido é em relação a isso. >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> Marcus Cavalcanti >>>>>>>>>>> 21 9144-5068 >>>>>>>>>>> www.marcuscavalcanti.net/blog >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> 2011/2/26 Tiago Davi <[email protected]> >>>>>>>>>>> >>>>>>>>>>> Não faz sentido pois como disse é apenas um exemplo. >>>>>>>>>>>> >>>>>>>>>>>> Aonde está escrito "queroChamarUmController" eu gostaria de >>>>>>>>>>>> chamar um método de um controller qualquer. >>>>>>>>>>>> >>>>>>>>>>>> Porém não tenho acesso aos controllers mas de qualquer forma >>>>>>>>>>>> estou resolvendo o problema com outra lib. >>>>>>>>>>>> >>>>>>>>>>>> Até. >>>>>>>>>>>> >>>>>>>>>>>> Em 25 de fevereiro de 2011 20:00, Marcus Cavalcanti < >>>>>>>>>>>> [email protected]> escreveu: >>>>>>>>>>>> >>>>>>>>>>>> Que tipo de teste é esse? hehe não faz o menor sentido >>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> Marcus Cavalcanti >>>>>>>>>>>>> 21 9144-5068 >>>>>>>>>>>>> www.marcuscavalcanti.net/blog >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> 2011/2/25 Tiago Davi <[email protected]> >>>>>>>>>>>>> >>>>>>>>>>>>>> Meu exemplo está assim: >>>>>>>>>>>>>> >>>>>>>>>>>>>> class TestModuleHome extends UnitTestCase{ >>>>>>>>>>>>>> function testInformacoes() >>>>>>>>>>>>>> { >>>>>>>>>>>>>> $this->assertEqual("davi", "queroChamarUmController"); >>>>>>>>>>>>>> } >>>>>>>>>>>>>> } >>>>>>>>>>>>>> >>>>>>>>>>>>>> Queria saber como posso chamar um método do meu controller e >>>>>>>>>>>>>> passar no teste já que não posso herdar o controller e quando >>>>>>>>>>>>>> instâncio >>>>>>>>>>>>>> direto ele da erro? >>>>>>>>>>>>>> >>>>>>>>>>>>>> Ninguém aqui usa essa lib?? >>>>>>>>>>>>>> >>>>>>>>>>>>>> Em 25 de fevereiro de 2011 16:16, Tiago Davi <tiago.asp.net@ >>>>>>>>>>>>>> gmail.com> escreveu: >>>>>>>>>>>>>> >>>>>>>>>>>>>> Boa tarde alguém já usou essa lib? >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> http://codeigniter.com/wiki/SimpleTester_-_Unit_testing_library/ >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Sabe como posso testar um controller usando essa lib mas de >>>>>>>>>>>>>>> forma a deixar o teste separado do controller? >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Desde já agradeço. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Att. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> -- >>>>>>>>>>>>>>> Tiago Davi - Desenvolvedor Web. >>>>>>>>>>>>>>> http://tiagoaspnet.blogspot.com >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> -- >>>>>>>>>>>>>> Tiago Davi - Desenvolvedor Web. >>>>>>>>>>>>>> http://tiagoaspnet.blogspot.com >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>>>> [email protected] >>>>>>>>>>>>>> http://www.codeigniter.com.br >>>>>>>>>>>>>> >>>>>>>>>>>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>>>>>>>>>>>>> >>>>>>>>>>>>>> --------------------------- >>>>>>>>>>>>>> Oportunidade de negócio >>>>>>>>>>>>>> http://www.franquiasargohost.net >>>>>>>>>>>>>> --------------------------- >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> Tiago Davi - Desenvolvedor Web. >>>>>>>>>>>> http://tiagoaspnet.blogspot.com >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Tiago Davi - Desenvolvedor Web. >>>>>>>>> http://tiagoaspnet.blogspot.com >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Tiago Davi - Desenvolvedor Web. >>>>>>>> http://tiagoaspnet.blogspot.com >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Tiago Davi - Desenvolvedor Web. >>>>>> http://tiagoaspnet.blogspot.com >>>>>> >>>>>> >>>>>> >>>>> >>>>> _______________________________________________ >>>>> [email protected] >>>>> http://www.codeigniter.com.br >>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>>>> >>>>> --------------------------- >>>>> Oportunidade de negócio >>>>> http://www.franquiasargohost.net >>>>> --------------------------- >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> [email protected] >>>> http://www.codeigniter.com.br >>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>>> >>>> --------------------------- >>>> Oportunidade de negócio >>>> http://www.franquiasargohost.net >>>> --------------------------- >>>> >>>> >>> >>> >>> -- >>> Tiago Davi - Desenvolvedor Web. >>> http://tiagoaspnet.blogspot.com >>> >>> >>> >>> _______________________________________________ >>> [email protected] >>> http://www.codeigniter.com.br >>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >>> >>> --------------------------- >>> Oportunidade de negócio >>> http://www.franquiasargohost.net >>> --------------------------- >>> >>> >> >> >> -- >> Eric Saboia - eric.saboia.org >> >> Beautiful is better than ugly, >> Explicit is better than implicit, >> Simple is better than complex, >> Complex is better than complicated. >> >> The Zen of Python, by Tim Peters >> >> >> _______________________________________________ >> [email protected] >> http://www.codeigniter.com.br >> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br >> >> --------------------------- >> Oportunidade de negócio >> http://www.franquiasargohost.net >> --------------------------- >> >> > > > -- > Tiago Davi - Desenvolvedor Web. > http://tiagoaspnet.blogspot.com > > > > _______________________________________________ > [email protected] > http://www.codeigniter.com.br > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br > > --------------------------- > Oportunidade de negócio > http://www.franquiasargohost.net > --------------------------- > >
_______________________________________________ [email protected] http://www.codeigniter.com.br http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br --------------------------- Oportunidade de negócio http://www.franquiasargohost.net ---------------------------

