Olá pessoal!
Para considerar como exemplo, abaixo uma classe e um respectivo teste com Jasmine:
function Paciente(nome, idade,
peso, altura) {
var clazz = {
imprime : function() {
alert(nome + " tem " + idade);
},
batimentos : function() {
return idade * 365 * 24 * 60 * 80;
},
imc : function() {
return peso/(altura*altura);
}
};
return clazz;
}
describe("Paciente", function() {
it("deve calcular o IMC", function() {
var guilherme = new Paciente("Guilherme", 28, 72, 1.82);
expect(guilherme.imc()).toEqual(72 / (1.82*1.82));
});
});
Neste curso não encontrei nenhum teste para validar parâmetros inválidos, considerando a classe acima, por exemplo para validar a idade, peso, altura (que poderiam ter sido passados com valor nulo)...
Não deveriam existir testes para estes parâmetros inválidos? Em caso afirmativo, poderiam exemplificar considerando um dos parâmetros?
Questiono porque, na minha opinião, em um cenário real estes testes lembrariam o desenvolvedor a verificar os parâmetros na classe, até porque em outra parte do programa o desenvolvedor que instanciar esta classe provavelmente não irá lembrar de validar estes parâmetros (ou poderá pensar que os parâmetros estão sendo válidos na própria classe).
Atenciosamente.