Junior
Postman және оның API тестілеудегі мүмкіндіктері туралы айтыңыз.
sobes.tech AI
AI-дан жауап
Postman — бұл API әзірлеу және тестілеу үшін арналған үстелдік қосымша және веб-платформа. Ол HTTP сұрауларын жіберуге, жауаптарды қарауға, сұрау коллекцияларын құруға, тестілеуді автоматтандыруға, API құжаттауға және жобалар бойынша бірлесіп жұмыс істеуге мүмкіндік береді.
Postman-ның API тестілеу үшін негізгі мүмкіндіктері:
- Сұрауларды құру және жіберу: Барлық негізгі HTTP әдістерін (GET, POST, PUT, DELETE, PATCH) қолдайды. Сұрау параметрлерін, тақырыптарды, сұрау денесін (формалар, JSON, XML және т.б.) баптауға мүмкіндік береді.
- Жауаптарды қарау және талдау: Статус кодын, тақырыптарды және жауап денесін көрсетеді. Мәліметтерді форматтауға және іздеуге мүмкіндік береді.
- Коллекциялармен жұмыс: Сұрауларды қалталар мен категориялар бойынша ұйымдастыру. Байланысқан тесттерді топтастыру үшін ыңғайлы.
- Айнымалылар мен орталар: Сұрауларда айнымалыларды (URL, токендер және т.б.) сақтау және пайдалану. Тестілеудің әртүрлі орталарында (dev, staging, prod) тез ауысуға мүмкіндік береді.
- Pre-request және Tests скрипттері:
- Pre-request скрипттері: Сұрау жіберілмес бұрын орындалады. Мәліметтерді дайындау, токендерді генерациялау және т.б. үшін пайдаланылады. JavaScript-те жазылған.
- Tests: Жауап ал after орындалады. Статус кодын, тақырыптарды, жауап денесін, жауап уақытын және басқа параметрлерді тексеруге мүмкіндік береді. JavaScript және Chai.js фреймворкін пайдаланады.
- Коллекция орындау арқылы автоматтандыру: Барлық коллекцияны немесе таңдалған сұрауларды автоматты түрде іске қосу. Орындау тәртібі, қайталау саны, кідірістерді баптауға болады. Нәтижелері есепте көрсетіледі.
- CI/CD жүйелерімен интеграция: Postman тесттерін командалық жолдан іске қосу мүмкіндігі, Newman (CLI-орындаушы) және Jenkins, GitLab CI, GitHub Actions және басқа жүйелермен интеграция.
- API құжаттау: Коллекциядағы сұраулар негізінде автоматты түрде құжаттама жасау. Басқа командаларға немесе клиенттерге ұсыну үшін ыңғайлы.
- Ынтымақтастық: Коллекциялар, айнымалылар және орталарды басқа команда мүшелерімен бөлісу мүмкіндігі.
Жауаптың мәртебесін және жауап денесінде "success" өрісінің бар-жоғын тексеру үшін скрипт мысалы:
// Жауап мәртебесін тексеру
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
// Жауап денесінде "success" өрісінің бар-жоғын тексеру (бұл булев типте болуы керек)
pm.test("Response body has 'success' property", function () {
const responseJson = pm.response.json();
pm.expect(responseJson).to.have.property('success');
pm.expect(responseJson.success).to.be.a('boolean'); // Тексерудің опционалды түрі
});
Айнымалыларды пайдалану мысалы:
// Сұрау URL-інде {{baseUrl}} айнымалысын пайдалану
// Pre-request Script-те токенді алу және сақтау
pm.environment.set("authToken", responseData.token);
// Сұрау тақырыбында Authorization-да {{authToken}} айнымалысын пайдалану
Postman API тестілеуді тиімді әрі оңай етеді.