Série da semana: Angular, API RESTful e Banco de Dados

Veja mais
O projeto está inativo

Documentação PHPUnit

Aqui você vai encontrar o passo a passo de como utilizar a ferramenta PHPUnit para escrever testes confiáveis que potencializarão a qualidade do seu código PHP.

Introdução

PHPUnit é um framework para realização de testes unitários em PHP baseada na arquitetura xUnit. É a forma mais difundida para realizar a prática de testes unitários pela comunidade PHP.

Criado por Sebastian Bergmann com o intuito de trazer ao PHP todos os recursos que já haviam no framework de teste unitário JUnit da linguagem Java, o PHPUnit adiciona também outros recursos muito utilizados, a exemplo dos dublês de teste. Atualmente, podemos utilizar esse framework a partir da versão 5.5 do PHP.

Leia também a Documentação Teste Unitário, que cobre Frameworks de teste disponíveis em diversas linguagens de programação, incluindo a sua. Documentação Teste Unitário

Destaques do Projeto

  • Escrevendo testes na prática
  • Criação de dublês de teste
  • Ampla cobertura dos asserts

Glossário

Unidade

A unidade de trabalho pode ser definida como todo o processo executado quando um método de uma classe é chamado que termina em um resultado que pode ser comparado com um resultado esperado, esse resultado pode ser um valor de retorno, alteração num estado da classe ou a execução de outros métodos em uma ou mais dependências.

É o menor trecho de código testável da aplicação, alvo das implementações do teste unitário. A unidade é a parte mais importante do teste. A definição de unidade varia de acordo com o paradigma de programação sendo usado, podendo ser um método, uma função ou até mesmo um script de ações sendo executadas sequencialmente.

Assert

Assert vem do inglês assegurar e condiz ao ato de realizar o teste comparando o resultado ou comportamento do código sendo testado com um resultado ou comportamento desejado. No PHPUnit os asserts são métodos da classes TestCase.

Classe de teste

É a classe onde os testes são escritos. A classe de teste herda da classe TestCase do PHPUnit. Classes de testes são criadas de forma que correspondam a classes de produção.

Suíte de testes

É o diretório ou caminho onde um determinado agrupamento de classes de teste se localizam. Geralmente usadas na proporção de uma suíte por aplicação, podendo haver diversas em grandes projetos. A quantidade de suítes de teste e suas especificações podem ser configuradas no arquivo phpunit.xml.

Dublê de teste

É um objeto usado para simular uma dependência do código sendo testado. O dublê é criado com o propósito de imitar um comportamento sem causar efeitos colaterais o que auxilia no isolamento dos testes sendo feitos. No PHPUnit um dublê de teste pode ser criado pelos métodos getMockBuilder e createMock da classe TestCase.

Ambiente/Fixture

É o conjunto de configurações e/ou implementações que é compartilhado por vários testes de mesma classe. Geralmente ambientes são montados através de um método setUp e fechados por um método tearDown, ambos da classe TestCase.

Saiba mais Veja a Série Receitas caseiras para teste unitário
Suporte ao aluno - Deixe a sua dúvida.
Assinatura Devmedia
Faça parte dessa comunidade 100% focada em programação e tenha acesso ilimitado. Nosso compromisso é tornar a sua experiência de estudo cada vez mais dinâmica e eficiente. Portanto, se você quer programar de verdade seu lugar é aqui. Junte-se a mais de...
+ 800 Mil programadores
,90* / mês
  • Séries
  • Projetos completos
  • Cursos
  • Guias de carreiras
  • DevCasts
  • Desafios
  • Artigos
  • App
  • Suporte em tempo real
A assinatura é cobrado através do seu cartão de crédito. *Tempo minimo de assinatura: 12 meses.
Assinatura Devmedia
Faça parte dessa comunidade 100% focada em programação e tenha acesso ilimitado. Nosso compromisso é tornar a sua experiência de estudo cada vez mais dinâmica e eficiente. Portanto, se você quer programar de verdade seu lugar é aqui. Junte-se a mais de...
+ 800 Mil programadores
Conheça agora!
,90* / mês
  • Séries
  • Projetos completos
  • Cursos
  • Guias de carreiras
  • DevCasts
  • Desafios
  • Artigos
  • App
  • Suporte em tempo real
A assinatura é cobrada através do seu cartão de crédito. *Tempo mínimo de assinatura: 12 meses.