Testaus - TiViOpetus/Autolainaus GitHub Wiki
Sovelluksen testaaminen
Testit on sijoitettu omaan kansioon tests
. Silloin, kun testit sijaitsevat muualla kuin juurikansiossa, testikansioon luodaan __init__.py
-tiedosto, jotta Python-tulkki löytää tiedostot. Projektissa käytetään testaamiseen pytest-kirjaston työkaluja. Testausympäristö on määriteltävä ennen testien kirjoittamista. Jos määritystä ei kysytä automaattisesti, annetaan komento ctrl + shift + P
ja syötetään hakuikkunaan Python: Configure Tests
. Testauskirjastoksi valitaan Pytest
ja testaushakemistoksi tests
-kansio. Joskus saatetaan joutua asentamaan testauskirjasto uudelleen. Se tapahtuu komennolla pip install pytest
.
Testien kirjoittaminen
Testiä varten luodaan Python-tiedosto. Esim. kun testataan moduulin cipher.py
toimintoja luodaan tiedosto test_cipehr.py
. Testitiedostonjen nimen pitää alkaa test_
-alkuliitteellä (prefix). Yksikkötestit (unit test) ovat funktioita, joiden nimi alkaa myös test_
-alkuliitteellä. Seuraavassa esimerkissä on cipher.py
-moduulin testejä:
# CIPHER.PY -MODUULIN YKSIKKÖTESTIT
# =================================
import pytest # Järjestelmätason virheiden testaus
from lendingModules import cipher # Testattavan moduulin lataus
# Tehdään testaamista varten salakirjoitettu teksti
plainText = b'Selkokieliteksti'
key = b'-SsqnFWfgh2pX_nnnOjiCXDH3LN9lmyhSd9SUt6S2HM='
cipherEngine = cipher.createChipher(key)
cryptoText = cipher.encrypt(cipherEngine, plainText)
# Testataan, että salakirjoitettu teksti muuttuu takaisin selkokieliseksi
def test_decrypt():
assert cipher.decrypt(cipherEngine, cryptoText, True) == plainText