Guia Completo sobre Teste de Software
Guia Completo sobre Teste de Software
Porqueotestedesoftwareénecessário?
CiclodeVidadoTestngdeSoftware
Ciclo de Vida de Teste de Software (STLC)refere-se a várias fases envolvidas no teste de
um software.
STLCem geral inclui as seguintes fases:
Revisão de Requisitos
PlanejamentoDeTeste
Desenvolvimento de Testes
TestEnvironmentSetUp
Execução de Teste
TestReportng
Níveis do Testng
UnitTestng
Teste de Integração
Teste de sistema
UnitTestng
Teste de UnidadeTestando os menores trechos de código possíveis de um programa.
def quadrado(n):
Retorna o quadrado de um número.
retornar n**2
Teste de Integração
Teste de IntegraçãoFoca nas interações de teste entre unidades relacionadas.
Esses testes ainda são executados em isolamento para superar entradas de fora.
ou outras unidades.
As entradas necessárias de unidades externas são simuladas.
Teste de Sistema
Teste de SistemaVerifica partes do programa assim que todas as unidades estão conectadas
juntos.
É uma forma extrema deTeste de Integração.
Os testes de sistema não serão úteis, se esses testes não forem suportados pelos resultados.
de testes de integração e testes unitários.
Teste de Aceitação
Teste de Unidade, Teste de IntegraçãoeTeste de Sistemaestá feito para verificar
produto de software como um todo ou seus componentes individuais.
Por outro lado, o teste que você realiza para confirmar que o software
comporta-se conforme o esperado é conhecidoTeste de Aceitação.
Teste de Aceitaçãonão verifica nenhuma funcionalidade central do software, ele
apenas visa verificar o comportamento do software.
Teste de Regressão
Teste de Regressãoé outro tipo de teste que garante que anteriormente
o software construído funciona da mesma forma após fazer algumas alterações nele ou
interligando-o com outro software.
Testes de Regressãopode ser escrito antes ou depois de um bug ser encontrado.
Eles fornecem uma garantia de que um aumento na complexidade de um programa não
introduzir novos bugs.
Introdução ao doctest
teste de docé um módulo do pythontestng, que permite escrever testes com base em
saída esperada do interpretador python padrão junto com a documentação.
teste de documentotambém é conhecido comoteste de documentooudocumento testável.
doctestpermite a combinação de testes e documentação. Este recurso permite
manter a documentação atualizada com a realidade e garantir que os testes expressem
o comportamento esperado.
Prompt secundário (...)é usado a partir da segunda linha em diante, quando uma afirmação
está escrito em múltiplas linhas.
O resultado esperado está escrito abaixo das declarações em python e deve ser o mesmo.
o resultado obtido, quando você executa a declaração em um shell python.
EscrevendoTestescomoDocumentaçãodeTexto
Os testes são escritos na forma de documentação em um arquivo de texto.
Vamos considerar o seguinte texto em um arquivo chamadosample_tests.txt. O arquivo
contém documentação de texto e dois testes escritos para o TestNG do Python Plus
operador.
===============================
Demonstrando o uso de doctest
===============================
>>> 2 + 4
6
-10,5 + 8
-2,5
A presença de uma linha em branco ou uma nova linha começando com o prompt primário após o
a saída esperada é vista como o fim do teste existente.
Executando Testes
Executar os testes escritos emsample_tests.txtusingthe below command.
Por padrão, nenhuma saída é exibida quando todos os testes passam. Para ver uma saída detalhada,
usar-vopção conforme mostrado no comando abaixo.
Saída
Tentando:
2+4
Esperando:
6
ok
Tentando:
-10,5 + 8
Esperando:
-2,5
ok
1 item passou em todos os testes:
2 testes em sample_tests.txt
2 testes em 1 item.
2 passed and 0 failed.
Test passed.
O exemplo mostra como uma definição de função que abrange várias linhas é
definido usando o prompt principal (>>>) e o prompt secundário (...), em um documento de texto.
**********************************************************************
Arquivo "D:\python 3.5\sample_module.py", linha 5, em sample_module.add2num
Exemplo falhado:
add2num(-8,5, 7)
Expected:
-2,5
Conseguiu:
-1,5
**********************************************************************
1 item teve falhas:
1 de 2 em sample_module.add2num
***Teste Falhou*** 1 falha.
Um testeadicionar2num(-8.5, 7)falha.
Esperando Exceções
Em alguns casos, você gostaria de levantar uma exceção, por exemplo, quando um
informação inválida foi fornecida.
doctestpode detectar levantadoexceçõesdetectando a exceção do python
reportandtraceback exibido em um shell interativo do python quando o
uma exceção é levantada.
doctestestá preocupado apenas com a primeira linhaRastro de execução (chamada mais recente
último):e a última linha, que diz qual exceção você espera.
relatórios de teste médicos falham apenas se uma dessas duas partes não corresponder.
Esperando Exceções
Agora adicione o texto abaixo, no final dos dois testes existentes.adicionar2numfunção,
emsample_tests.txtarquivo
Prós e Contras
Prós
doctesté muito simples de usar e não requer qualquer instalação.
A documentação do código Itensures, contendo exemplos interativos, está atualizada.
Contras