CLI-gränssnitt

Introduktion till testning i Python

Alexander Levin

Data Scientist

Exempel: kod

Test av exponenteringsoperatorn:

# test_sqneg.py
import unittest
# Declaring the TestCase class
class TestSquared(unittest.TestCase):
    # Defining the test
    def test_negative(self):
        self.assertEqual((-3) ** 2, 9)

CLI-kommando:

python3 -m unittest test_sqneg.py

Kör Python-skriptet test_sqneg.py med modulen unittest.

Introduktion till testning i Python

Exempel: utdata

Kommandot: python3 -m unittest test_sqneg.py

Testutdata: utdata från unittest test_sqneg.py

Introduktion till testning i Python

Nyckelordsargument -k

unittest -k – kör testmetoder och klasser som matchar ett mönster eller en delsträng

Kommando: python3 -m unittest -k "SomeStringOrPattern" test_script.py

Exempel: python3 -m unittest -k "Squared" test_sqneg.py

Utdata: utdata med nyckelord

1 https://docs.python.org/3/library/unittest.html
Introduktion till testning i Python

Snabbavbrott -f

unittest -f – avbryter testkörningen vid första felet eller misslyckat test.

Kommando: python3 -m unittest -f test_script.py

Användningsexempel: när alla tester är kritiska, till exempel vid kontroll av ett flygplan inför en flygning.

exempel på misslyckat test

1 https://docs.python.org/3/library/unittest.html
Introduktion till testning i Python

Catch-flaggan -c

Catch-flaggan unittest -c – låter dig avbryta testet genom att trycka "Ctrl - C".

  • Om "Ctrl - C"
    • trycks en gång väntar unittest på att det aktuella testet ska avslutas och rapporterar alla resultat hittills.
    • trycks två gånger utlöser unittest undantaget KeyboardInterrupt.

Kommando: python3 -m unittest -c test_script.py

Användningsexempel: vid felsökning av en stor testsvit

1 https://docs.python.org/3/library/unittest.html
Introduktion till testning i Python

Verbose-flaggan -v

unittest -v – kör tester med mer detaljerad utdata

Kommando: python3 -m unittest -v test_script.py.

Användningsexempel: felsökning

Exempel på utdata: utdata från unittest med verbose-flagga

1 https://docs.python.org/3/library/unittest.html
Introduktion till testning i Python

Sammanfattning

  • Grundkommando utan argument: python3 -m unittest test_script.py

  • Utdata i unittest

  • Nyckelordsargument: python3 -m unittest -k "SomeStringOrPattern" test_script.py

  • Snabbavbrott: python3 -m unittest -f test_script.py

  • Catch-flaggan: python3 -m unittest -c test_script.py

  • Verbose-flaggan: python3 -m unittest -v test_script.py

Introduktion till testning i Python

Nu kör vi en övning!

Introduktion till testning i Python

Preparing Video For Download...