11 de dezembro de 2023
Para exemplificar o uso do PHP Unit na prática vamos ver o exemplo simples de uma classe chamada Pessoa:
// Classe Pessoa que representa uma pessoa com nome e idade
class Pessoa {
// Atributos privados da classe
private $nome;
private $idade;
// Construtor da classe que recebe o nome e a idade da pessoa
public function __construct($nome, $idade) {
$this->nome = $nome;
$this->idade = $idade;
}
// Método público que retorna o nome da pessoa
public function getNome() {
return $this->nome;
}
// Método público que retorna a idade da pessoa
public function getIdade() {
return $this->idade;
}
// Método público que verifica se a pessoa é maior de idade
public function isMaiorDeIdade() {
return $this->idade >= 18;
}
}
//Precisamos informar que a classe vai utilizar o PHP Unit
use PHPUnit\Framework\TestCase;
// Classe de teste herda de PHPUnit\Framework\TestCase
class PessoaTest extends TestCase {
// Método de teste que verifica se o construtor da classe Pessoa funciona corretamente
public function testConstrutor() {
// Cria uma instância da classe Pessoa com o nome "João" e a idade 25
$pessoa = new Pessoa("João", 25);
// Verifica se o nome da pessoa é "João"
$this->assertEquals("João", $pessoa->getNome());
// Verifica se a idade da pessoa é 25
$this->assertEquals(25, $pessoa->getIdade());
}
// Método de teste que verifica se o método isMaiorDeIdade da classe Pessoa funciona corretamente
public function testIsMaiorDeIdade() {
// Cria uma instância da classe Pessoa com o nome "Maria" e a idade 17
$pessoa = new Pessoa("Maria", 17);
// Verifica se a pessoa é menor de idade
$this->assertFalse($pessoa->isMaiorDeIdade());
// Cria uma instância da classe Pessoa com o nome "Pedro" e a idade 18
$pessoa = new Pessoa("Pedro", 18);
// Verifica se a pessoa é maior de idade
$this->assertTrue($pessoa->isMaiorDeIdade());
}
}
Se você criar os arquivos Pessoa.php e PessoaTest.php num diretório contendo o PhpUnit e rodar o comando phpunit PessoaTest.php você deverá observar o seguinte resultado:
Assinar:
Postar comentários
(Atom)
Destaques:
- Instalar o WSL2 e Configurar o Docker no Windows
- Laravel - Criando Models e Migrations
- Sublime - Atalhos Para Comentar O Código
- Como Traduzir O Visual Studio 2012 Para Português
- Hospedagem-downloads
- Desabilitando O Cache Com Header Expires
- Laravel - Habilitando as Páginas de Cadastro e Login Para o Usuário
- #1 - O que é TDD?
- Laravel - Alterar O Fuso Horário Do Projeto
- Como Criar Uma Imagem Responsiva
Comentários
Perfil
Formada em Sistemas de Informação e pós-graduada em Engenharia de Software.
0 comments:
Postar um comentário