Tämä projekti sisältää esimerkkejä API-testaukseen hyödyntäen seuraavia työkaluja ja kirjastoja:
- Schemathesis
- Hypothesis-kirjasto
- pytest-kirjasto
- requests-kirjasto
- Allure Report, avoimen lähdekoodin testiraportointityökalu
Tässä repossa on esimerkkiskripti, joka testaa lemmikkieläinkaupan APIa käyttäen Schemathesis-työkalua, sekä laajentaa testejä pytestillä. Tämä lähestymistapa sisältää siis sekä perinteisen esimerkkipohjaisen testauksen että ominaisuuksiin perustuvan fuzzingin edut.
- Asenna Python.
- Asenna ja aktivoi Pythonin virtuaaliympäristö ajamalla tämän repon juuressa Windowsin Git Bashissa:
python -m venv testenv
source testenv/Scripts/activate
Asenna riippuvuudet:
pip install -r requirements.txt
Asenna Allure Report -komentorivityökalu. Esimerkiksi, jos node.js on asennettuna:
npm install -g allure-commandline
Verifioi asennus:
allure --version
Testit:
- parametrisoidut Schemathesis-testit (test_api.py)
- testi, joka testaa lemmikin luontia (test_pet.py)
Testit ajetaan tests -kansiosta. Aja kaikki testit ja tallenna tulokset JUnit XML-muodossa:
pytest -s -v test_api.py test_pet.py --junit-xml=../allure-results/junit-results.xml
Generoi ja avaa raportti:
allure generate ../allure-results --clean -o ../allure-report
allure open ../allure-report
- Lyhyt videotutoriaali PyTest REST API Integration Testing with Python
- HTTP statuskoodien selitys