Duvida sobre teste unitário
Professor, ao inves de fazer como o sr fez, eu preferi criar um getQuantity dentro da classe Product e na função getItems de cart eu troquei o nome para getQuantityItems e dentro dela eu criei uma variável chamada $quantity = 0 e um foreaech que percorre $this->items, dentro desse foreach fiz $quantity+=$item->getQuantity() e no fim retornei esse $quantity.
Na classe de teste em vez de fazer um assertCount eu fiz um assertEquals passando o valor total simulado e a função $cart->getQuantityItens()
Fazendo dessa forma continua sendo um teste unitário ou se torna teste de integração?
E dentro da função total de Cart eu criei uma variável $total = 0 e percorri o array de itens, para cada item eu fiz $total+= $item->getPrice() * $item->getQuantity() e dessa forma ele vai multiplicar a quantidade de cada item pelo seu valor.
Olá, Weslley!
Tudo bem?
Se seu teste resumiu a apenas a classe de Cart, é teste unitário ainda, porque você está testando uma única unidade, que no caso é a classe de Cart.
A partir do momento que você usar outra classe, já passa a ser um teste de integração, porque dessa forma o seu teste depende do comportamento de outra unidade (classe ou método).
Pegou a ideia amigo?
Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!