Sobes.tech
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 тестілеуді тиімді әрі оңай етеді.