Pitão

Tutorial Python Unittest

Tutorial Python Unittest

O teste de unidade é um método de teste usado em engenharia de software para unidades individuais de qualquer código. Os usuários podem colocar os testes individuais para determinar o status da fonte e quanto o código é adequado para ser usado. Desta forma, os usuários podem testar a qualidade do código.

O teste é feito quando o processo de desenvolvimento é concluído. Os usuários também podem começar o teste quando o script de teste for verificado com base nos critérios do teste. Espera-se que os desenvolvedores escrevam os tipos manuais do código-fonte. Geralmente, escrever códigos de teste de unidade manualmente é uma tarefa agitada, mas em Python, isso é feito usando uma função embutida chamada unittest.

Teste de unidade

O teste em Python é feito pelo framework unittest. O teste de unidade torna o código seguro e fácil de usar no futuro também. Os usuários geralmente não podem prever esses casos, mas podem resolvê-los facilmente. Unittest pode ser o módulo inteiro, uma função particular e uma interface completa (classe / módulo).

Como escrever testes de unidade para seu código?

Para escrever os testes de unidade para o seu código, sempre comece com a menor unidade que pode ser testada em todo o seu código e, em seguida, avance para outras unidades. Desta forma, você irá verificar como a menor unidade escolhida interage para construir um teste de unidade completo.

A estrutura de teste de unidade do Python foi formada levando-se em consideração o Junit do Java. Ele tem os mesmos recursos, como o teste de unidade é feito em outros tipos diferentes de linguagens. A estrutura de teste de unidade em Python ajuda no teste de automação, configuração de compartilhamento, agregação de muitos testes em um grande conjunto e testes independentes

Exemplos:

Agora, no exemplo, estamos verificando o código para descobrir a soma no código Python usando a função sum (). A resposta a este somatório deve ser 12, o que é correto.

>>> assert sum ([2, 4, 6]) == 12, "Deve ser igual a 12"

Por outro lado, se tentarmos escrever um valor de saída errado, cujo sum () está incorreto, os resultados irão falhar. Ele retornará um AssertionError. A saída declarada por nós é 12 errada e a saída real deve ser 6, portanto, ele retornou este erro.

>>> afirme soma ([2, 2, 2]) == 12, "Deve ser igual a 12"

Agora, em vez de testar no REPL, vamos colocar um novo arquivo Python e nomeá-lo test_sum.py

>> def testValue_sum ():
assert sum ([2, 4, 6]) == 12, "Deve ser igual a 12"
if __name__ == "__main__":
testValue_sum ()
print ("Tudo foi passado corretamente")

Depois de escrever o caso de teste, você pode acessar o diretório que tem o test_sum.arquivo py e, em seguida, digite:

$ python test_sum.py

Resultado:

O valor de saída, quando é semelhante ao exibido, aprovará o valor correto.

Vamos criar outro arquivo para .py para testar a soma. O exemplo conforme exibido no código e pode ser usado como uma amostra, copiando:

def testValue_sum ():
assert sum ([2, 4, 6]) == 12, "Deve ser igual a 12"
def testValue_sum_tuple ():
assert sum ((1, 1, 1)) == 6, "Deve ser igual a 6"
if __name__ == "__main__":
testValue_sum ()
testValue_sum_tuple ()
print ("Tudo foi passado corretamente")

Desta vez, iremos nomear novamente o arquivo test_sum.py 

O primeiro bloco de código está correto, enquanto o segundo bloco de código está errado e tem um erro, então nossa saída retornará o mesmo.

Agora, vamos voltar ao diretório do projeto, onde salvamos o .arquivo py, e teste o arquivo usando o seguinte comando:

$ python test_sum.py

Resultado:

Desta vez, como o código de entrada apresentou um erro, espera-se que ele retorne o erro de asserção em resposta.

Exemplo de uso de unittest:

Os requisitos da Unittest são que os usuários podem colocar seus testes em classes como métodos diferentes, os usuários podem usar uma série de métodos de asserção e a classe TestCase pode ser usada no lugar da instrução assert.

Os usuários podem converter o exemplo discutido na metade anterior em um caso de teste de teste de unidade.

Primeiro, importe a biblioteca unitest. Em seguida, você precisa criar um TestSum de diferentes classes.

Crie um novo arquivo para o código discutido abaixo:

import unittest
classe TestSum (unittest.Caso de teste):
def testValue_sum (self):
auto.assertEqual (sum ([2, 4, 6]), 12, "Deve ser igual a 12")
def testValue_sum_tuple (self):
auto.assertEqual (sum ((1, 1, 1)), 6, "Deve ser igual a 6")
if __name__ == '__main__':
teste de unidade.a Principal()

Depois de executar este comando, a saída tem um ponto. Isso significa sucesso e um F significa um fracasso.

Então, nós temos sucesso e outro é um fracasso.

Resultado:

Escrevendo o primeiro teste:

Crie uma nova pasta de projeto e, em seguida, crie uma nova pasta, vamos chamá-la sum_file. Dentro dele, crie um arquivo e nomeie-o, __init__.py.  Faça a pasta do projeto como esta:

projeto/

└── sum_file /
└── __init__.py

Então você precisa abrir my_sum / __ init__.py e cria uma nova função sum (). Será iterável (uma lista, tupla ou conjunto) para adicionar muitos valores:

def sum (arg):
total_ValueCalculated = 0
para val em arg:
total_ValueCalculated + = val
retornar total_ValueCalculated

Em seguida, você precisa criar um teste Arquivo. Comece escrevendo testes e crie um arquivo de teste chamado testFile.py. Para importar o aplicativo, e ele deve ser testado, coloque o arquivo testFile.py acima de sua pasta do pacote. A seguir, uma visão geral do seu diretório:

projeto/

├── sum_file /
│ └── __init__.py
|
└── testFile.py

Conforme discutido anteriormente para testar o código, você pode usar o seguinte comando na janela de terminal / linha de comando:

$ python -m unittest test

Conclusão

O artigo discute o processo de teste de unidade em Python. O teste é um dos recursos úteis da engenharia de software que é capaz de dividir os códigos em pedaços menores e, em seguida, experimentá-los um por um. Os usuários também podem compilar todas as amostras de teste / códigos de unidade em uma grande coleção. Unittest é uma função usada em Python para facilitar o uso de testes.

WinMouse permite que você personalize e melhore o movimento do ponteiro do mouse no PC com Windows
Se você quiser melhorar as funções padrão do ponteiro do mouse, use um freeware WinMouse. Ele adiciona mais recursos para ajudá-lo a obter o máximo do...
O botão esquerdo do mouse não funciona no Windows 10
Se você estiver usando um mouse dedicado com seu laptop ou computador desktop, mas o o botão esquerdo do mouse não funciona no Windows 10/8/7 por algu...
O cursor pula ou se move aleatoriamente enquanto digita no Windows 10
Se você descobrir que o cursor do mouse pula ou se move por conta própria, de forma automática e aleatória ao digitar em um laptop ou computador com W...