cari
Rumahhujung hadapan webtutorial jsMenguasai Ujian API Cypress: Panduan Komprehensif dengan Contoh

Antara Muka Pengaturcaraan Aplikasi, yang lebih dikenali sebagai API ialah aspek penting dalam kitaran hayat pembangunan perisian bukan sahaja dari sudut pandangan pembangunan tetapi juga dari perspektif ujian. API ini memudahkan interaksi antara sistem yang berbeza untuk bertukar data. Oleh itu, menjadi sangat penting untuk menguji API ini secara menyeluruh untuk memastikan aplikasi berfungsi dengan lancar.

Dalam artikel ini, kami akan meneroka Ujian API dengan Rangka Kerja Pengujian Cypress dan melihat cara kami boleh mengautomasikan API kami untuk ujian yang cekap. Kami akan membincangkan perkara di bawah dalam artikel ini-

Ikhtisar Pengujian API

Pengujian API melibatkan penghantaran Permintaan HTTP, sama ada GET, POST, PUT, DELETE(atau kaedah lain) ke pelayan bahagian belakang dan mendapatkan semula respons. Sebaik sahaja respons diperoleh, ia disahkan untuk memastikan bahawa nilai yang dijangkakan telah diterima. Beberapa aspek utama ujian API disenaraikan di bawah

  • Mengesahkan Kod Status – Pengesahan kod status dalam respons dilakukan untuk memastikan kod status yang dikehendaki diterima. Sebagai contoh, 200 kod status dijangka untuk memastikan Kejayaan. Anda boleh merujuk kepada kod status standard lain yang digunakan untuk Permintaan HTTP daripada dokumentasi wiki.
  • Penegasan Badan Respons – Pengesahan badan respons HTTP untuk memastikan XML atau JSON mengandungi data yang dijangkakan dan mempunyai struktur yang betul.
  • Menguji Parameter Permintaan – Pengesahan gelagat API dengan menghantar nilai yang berbeza dalam parameter dan pengepala.
  • Pengesahan & Kebenaran – Pengesahan mekanisme pengesahan yang betul dan aspek keselamatan. Semasa menguji API, perkara di atas dipertimbangkan untuk memastikan bahawa fungsi API hujung ke hujung adalah bebas pepijat.

Menggunakan Cypress untuk Ujian API

Cypress ialah alat ujian bahagian hadapan yang popular, digunakan untuk pelayar dan ujian automasi hujung ke hujung. Cypress dilengkapi dengan keupayaan permintaan rangkaian, yang menjadikannya pilihan yang baik untuk ujian API juga. Beberapa ciri utama yang ditawarkan oleh Cypress untuk Ujian API ialah-

  • Kebiasaan dalam sintaks – Sama seperti ujian UI, arahan API Cypress menggunakan sintaks .should() dan .then() yang sama.
  • Pernyataan Terbina Dalam – Kami boleh menggunakan pernyataan yang disediakan oleh Cypress dengan mudah untuk menegaskan kod status, atau pengepala atau badan respons permintaan API.
  • Mencuba semula permintaan yang gagal – Cypress mencuba semula permintaan yang gagal secara automatik untuk memastikan tiada rangkaian atau isu lain yang serupa.

Dokumentasi Terperinci – Cypress telah mendokumentasikan permintaan dan penegasan dengan baik menjadikannya mudah untuk mendapatkan sokongan semasa berlari.

Ciri Utama Pengujian API Cypress

Cypress dilengkapi dengan pelbagai ciri untuk membantu anda melaksanakan Ujian API dengan berkesan dan cekap. Beberapa ciri dibincangkan di bawah-

  • cy.wait() – Menyediakan mekanisme untuk menunggu permintaan rangkaian dan membantu memuatkan data tak segerak.
  • cy.route() – Membantu menghalakan permintaan ujian kepada pengendali tertentu.
  • cy.server() – membantu mengekalkan keseluruhan pelayan untuk suite ujian.
  • Pelari Ujian – Membantu dalam pelaksanaan ujian selari untuk masa pemulihan yang cepat.
  • cy.login() – Membantu dalam membuat permintaan API yang selamat dengan menetapkan pengepala kebenaran dengan satu arahan sebelum panggilan.
  • cy.intercept() – Mengawal respons atau mensimulasikan gelagat dengan memintas permintaan. Dengan ciri-ciri ini ia menjadi sangat mudah dan mudah bagi pengguna untuk mula menulis ujian API dengan keupayaan yang dipertingkatkan dan rangka kerja yang cekap.

Sekarang kami memahami cara Cypress boleh membantu dalam mengautomasikan API kami, marilah kami menulis Ujian API mudah menggunakan Cypress. Tetapi sebelum itu anda perlu memastikan bahawa prasyarat di bawah dipenuhi-

  • Pasang IDE seperti Visual Studio (ini adalah IDE yang paling banyak digunakan, tetapi anda boleh merujuk beberapa IDE lain seperti IntelliJ juga)
  • Pasang Node.js dalam sistem anda Sekarang mari kita ikuti langkah-langkah menulis ujian API pertama kami menggunakan Cypress.

Menulis Ujian API Pertama menggunakan Cypress

Dalam artikel ini kami akan membincangkan senario mudah menghantar Permintaan HTTP menggunakan kaedah GET, POST, PUT dan DELETE. Tetapi sebelum kita mula menulis skrip ujian, kita akan menyediakan persekitaran.

  1. Buat folder secara setempat dalam sistem anda, saya telah mencipta folder bernama CypressAPITests dalam sistem saya.

Mastering Cypress API Testing: A Comprehensive Guide with Examples

api cemara
2 . Seterusnya, buka editor Visual Studio Code dan buka folder seperti yang dibuat dalam Langkah#1.

Mastering Cypress API Testing: A Comprehensive Guide with Examples

3 . Sekarang anda telah membuka folder, langkah seterusnya ialah menyediakan projek nod. Untuk berbuat demikian, dalam terminal gunakan arahan npm init -y, ini akan mencipta fail package.json.

Mastering Cypress API Testing: A Comprehensive Guide with Examples

4 . Kami kini akan memasang Cypress dari terminal, jika belum selesai, menggunakan arahan npx cypress install.

Mastering Cypress API Testing: A Comprehensive Guide with Examples

5 . Kami kini akan mencipta fail konfigurasi untuk ujian kami, dan untuk berbuat demikian, kami akan menjalankan perintah npx cypress open dalam terminal.

Mastering Cypress API Testing: A Comprehensive Guide with Examples

6 . Setelah alat Cypress dibuka, pilih Ujian E2E.

Mastering Cypress API Testing: A Comprehensive Guide with Examples

7 . Klik pada Teruskan pada skrin seterusnya.

8 . Setelah fail konfigurasi telah disediakan, kembali ke editor Visual Studio Code dan anda akan melihat fail konfigurasi telah dibuat.

Mastering Cypress API Testing: A Comprehensive Guide with Examples

9 . Kini Cypress telah berjaya dipasang dan juga persekitaran sudah sedia. Kami akan mula menulis ujian kami sekarang.

Kami akan menggunakan beberapa panggilan API palsu untuk menunjukkan Automasi API Cypress.

Dalam editor Visual Studio Code, buat folder e2e di bawah direktori Cypress. Di bawah folder e2e anda boleh mencipta folder lain dengan nama APITests. Harap maklum bahawa anda boleh memilih nama folder mengikut keperluan anda.

Sekarang kami akan mula menulis fail ujian pertama kami. Kami akan membuat fail di bawah folder APITests. Biar kami namakannya sebagai HttpGetRequest. Nama fail ini akan mempunyai sambungan .cy.js seperti yang ditunjukkan dalam petikan di bawah-

Mastering Cypress API Testing: A Comprehensive Guide with Examples
Sekarang kita akan mula menulis kod utama. Sebelum berbuat demikian, mari kita lihat sintaks asas permintaan-

cy.request(KAEDAH,url,badan)

Dalam permintaan yang dibuat menggunakan Cypress, url ialah parameter wajib tetapi parameter lain seperti Kaedah dan badan adalah pilihan. Anda boleh melihat sintaks permintaan yang berbeza daripada dokumentasi rasmi Cypress untuk mendapatkan lebih pemahaman tentang cara kami boleh menggunakannya secara berbeza.

Dalam senario contoh kami, kami akan menggunakan kaedah GET untuk mengambil beberapa sumber, jadi kami akan menggunakan Kaedah dan url sebagai parameter untuk cy.request.

cy.request('GET','https://dummy.restapiexample.com/api/v1/employees')
Perintah ini akan membuat panggilan API ke pelayan.

Seterusnya, kami akan menegaskan beberapa nilai respons, contohnya kod status.

.itu('status')
.sepatutnya('sama',200);
Baris kod ini akan mengesahkan kod status respons dan menegaskan bahawa nilainya ialah 200.

Mari kita lihat bagaimana kod ini akan kelihatan apabila ia digabungkan:

huraikan('HTTPGet',()=>{

ia('DAPATKAN permintaan',()=>{

cy.request('GET','https://dummy.restapiexample.com/api/v1/employees')
.its('status')
.sepatutnya('sama',200);

})

})
Selepas menulis kod untuk permintaan GET, kami akan melaksanakan perkara yang sama. Untuk melaksanakannya, kita boleh menggunakan mana-mana daripada dua cara-

  1. Pelaksanaan melalui terminal
  2. Pelaksanaan melalui alat Cypress Kita akan lihat satu persatu bagaimana kita boleh melaksanakan pelaksanaan.

Pelaksanaan melalui Terminal

Untuk melaksanakan kod Cypress melalui terminal, buka tetingkap terminal dan hanya hantar arahan:

npx cypress run –spec “filepath”

Dalam arahan di atas, laluan fail ialah laluan relatif bagi fail yang anda ingin laksanakan. Gambar di bawah menunjukkan pelaksanaan fail HTTPGetRequest pada sistem saya-

Mastering Cypress API Testing: A Comprehensive Guide with Examples

Anda dapat melihat bahawa pelaksanaan ujian telah berjaya dan ujian API kami telah lulus.

Mari kita cuba melaksanakan ujian yang sama melalui Alat Cypress.

Pelaksanaan melalui Alat Cypress

1 . Hanya tulis arahan npx cypress open untuk membuka alat.

  1. Sebaik sahaja anda melihat tetingkap alat dibuka, klik pada Ujian E2E.

Mastering Cypress API Testing: A Comprehensive Guide with Examples

  1. Sekarang pilih mana-mana penyemak imbas. Saya memilih Elektron.

Mastering Cypress API Testing: A Comprehensive Guide with Examples

  1. Anda akan melihat bahawa penyemak imbas Electron dibuka dengan spesifikasi yang telah kami tulis Kod Visual Studio dipaparkan.

Mastering Cypress API Testing: A Comprehensive Guide with Examples

  1. Pilih HttpGetRequest dan anda akan melihat bahawa pelaksanaan bermula dengan log dipaparkan.

Mastering Cypress API Testing: A Comprehensive Guide with Examples

Dan di sana anda telah melaksanakan Ujian Automasi API Cypress pertama anda. Kami kini akan meningkatkan kod kami untuk melaksanakan beberapa Kaedah HTTP lain.

Kaedah POS

Kod untuk melaksanakan Permintaan HTTP POST-

huraikan('HTTPGet',()=>{

ia('POST request',()=>{
cy.request({
kaedah: 'POST',
url: 'https://dummy.restapiexample.com/api/v1/create',
badan: {
"nama":"siaran ujian",
"gaji":"1234",
"umur":"23"

}
})
.its('status')
.sepatutnya('sama',200);
})
})
Selepas melaksanakan kod di atas, log akan memaparkan hasil pelaksanaan seperti yang ditunjukkan di bawah-

Mastering Cypress API Testing: A Comprehensive Guide with Examples
Untuk demonstrasi seterusnya kami akan menggunakan satu lagi koleksi API palsu dan melihat cara kaedah permintaan HTTP berfungsi untuk mereka.

Kaedah PUT

Kod untuk melaksanakan Permintaan HTTP PUT-

huraikan('HTTPPut',()=>{

ia('LETAKKAN permintaan',()=>{
cy.request({
kaedah: 'LETAK',
url: 'https://jsonplaceholder.typicode.com/posts/1',
badan: {
id: 1,
tajuk: 'Ini Kemas Kini PUT',
badan: 'Ini badan Kemas Kini PUT',
ID pengguna: 1,
}
})
.its('status')
.sepatutnya('sama',200) ;
})
})

Hasil pelaksanaan kod di atas dipaparkan di bawah-

Mastering Cypress API Testing: A Comprehensive Guide with Examples

Kaedah PADAM

Kod untuk melaksanakan Padam Permintaan HTTP(Perhatikan bahawa saya menambahkan sekeping kod di bawah dalam contoh yang sama yang saya gunakan di atas)-

ia('DELETE request',()=>{
cy.request({
kaedah: 'PADAM',
url: 'https://jsonplaceholder.typicode.com/posts/1',
})
.its('status')
.sepatutnya('sama',200) ;
})
Memandangkan kedua-dua permintaan PUT dan DELETE berada dalam fail yang sama, kedua-dua kaedah telah dilaksanakan dan hasilnya adalah seperti yang dipaparkan di bawah-

Mastering Cypress API Testing: A Comprehensive Guide with Examples
Jadi, ini sahaja dan anda kini tahu bagaimana anda boleh melaksanakan Permintaan HTTP asas untuk Kaedah berbeza menggunakan Cypress. Anda kini boleh meneruskan dan cuba melaksanakan Ujian API Cypress dalam projek anda dan lihat betapa mudahnya anda dapat menguji API dengan masa pemulihan yang cepat.

Kesimpulan

Setelah melalui asas API dan Cypress untuk Ujian API, kami membuat kesimpulan pada perkara di bawah-

  1. Pengujian API Cypress membantu dengan set alat yang berkuasa yang memberikan kebiasaan kepada sintaks Cypress untuk Ujian UI.
  2. Kami boleh menggunakan penegasan dengan mudah untuk mengesahkan kod status respons dan sebarang parameter respons lain.

Sumber: Artikel ini pada asalnya diterbitkan di testgrid.io.

Atas ialah kandungan terperinci Menguasai Ujian API Cypress: Panduan Komprehensif dengan Contoh. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Hubungan antara JavaScript, C, dan penyemak imbasHubungan antara JavaScript, C, dan penyemak imbasMay 01, 2025 am 12:06 AM

Pengenalan Saya tahu anda mungkin merasa pelik, apa sebenarnya yang perlu dilakukan oleh JavaScript, C dan penyemak imbas? Mereka seolah -olah tidak berkaitan, tetapi sebenarnya, mereka memainkan peranan yang sangat penting dalam pembangunan web moden. Hari ini kita akan membincangkan hubungan rapat antara ketiga -tiga ini. Melalui artikel ini, anda akan mempelajari bagaimana JavaScript berjalan dalam penyemak imbas, peranan C dalam enjin pelayar, dan bagaimana mereka bekerjasama untuk memacu rendering dan interaksi laman web. Kita semua tahu hubungan antara JavaScript dan penyemak imbas. JavaScript adalah bahasa utama pembangunan front-end. Ia berjalan secara langsung di penyemak imbas, menjadikan laman web jelas dan menarik. Adakah anda pernah tertanya -tanya mengapa Javascr

Aliran node.js dengan typescriptAliran node.js dengan typescriptApr 30, 2025 am 08:22 AM

Node.js cemerlang pada I/O yang cekap, sebahagian besarnya terima kasih kepada aliran. Aliran memproses data secara berperingkat, mengelakkan beban memori-ideal untuk fail besar, tugas rangkaian, dan aplikasi masa nyata. Menggabungkan sungai dengan keselamatan jenis typescript mencipta powe

Python vs JavaScript: Pertimbangan Prestasi dan KecekapanPython vs JavaScript: Pertimbangan Prestasi dan KecekapanApr 30, 2025 am 12:08 AM

Perbezaan prestasi dan kecekapan antara Python dan JavaScript terutamanya dicerminkan dalam: 1) sebagai bahasa yang ditafsirkan, Python berjalan perlahan tetapi mempunyai kecekapan pembangunan yang tinggi dan sesuai untuk pembangunan prototaip pesat; 2) JavaScript adalah terhad kepada benang tunggal dalam penyemak imbas, tetapi I/O multi-threading dan asynchronous boleh digunakan untuk meningkatkan prestasi dalam node.js, dan kedua-duanya mempunyai kelebihan dalam projek sebenar.

Asal JavaScript: Meneroka Bahasa PelaksanaannyaAsal JavaScript: Meneroka Bahasa PelaksanaannyaApr 29, 2025 am 12:51 AM

JavaScript berasal pada tahun 1995 dan dicipta oleh Brandon Ike, dan menyedari bahasa itu menjadi C. 1.C Language menyediakan keupayaan pengaturcaraan prestasi tinggi dan sistem untuk JavaScript. 2. Pengurusan memori JavaScript dan pengoptimuman prestasi bergantung pada bahasa C. 3. Ciri lintas platform bahasa C membantu JavaScript berjalan dengan cekap pada sistem operasi yang berbeza.

Di sebalik tabir: Apa bahasa JavaScript?Di sebalik tabir: Apa bahasa JavaScript?Apr 28, 2025 am 12:01 AM

JavaScript berjalan dalam penyemak imbas dan persekitaran Node.js dan bergantung pada enjin JavaScript untuk menghuraikan dan melaksanakan kod. 1) menjana pokok sintaks abstrak (AST) di peringkat parsing; 2) menukar AST ke bytecode atau kod mesin dalam peringkat penyusunan; 3) Laksanakan kod yang disusun dalam peringkat pelaksanaan.

Masa Depan Python dan JavaScript: Trend dan RamalanMasa Depan Python dan JavaScript: Trend dan RamalanApr 27, 2025 am 12:21 AM

Trend masa depan Python dan JavaScript termasuk: 1. Kedua -duanya akan terus mengembangkan senario aplikasi dalam bidang masing -masing dan membuat lebih banyak penemuan dalam prestasi.

Python vs JavaScript: Persekitaran dan Alat PembangunanPython vs JavaScript: Persekitaran dan Alat PembangunanApr 26, 2025 am 12:09 AM

Kedua -dua pilihan Python dan JavaScript dalam persekitaran pembangunan adalah penting. 1) Persekitaran pembangunan Python termasuk Pycharm, Jupyternotebook dan Anaconda, yang sesuai untuk sains data dan prototaip cepat. 2) Persekitaran pembangunan JavaScript termasuk node.js, vscode dan webpack, yang sesuai untuk pembangunan front-end dan back-end. Memilih alat yang betul mengikut keperluan projek dapat meningkatkan kecekapan pembangunan dan kadar kejayaan projek.

Adakah JavaScript ditulis dalam C? Memeriksa buktiAdakah JavaScript ditulis dalam C? Memeriksa buktiApr 25, 2025 am 12:15 AM

Ya, teras enjin JavaScript ditulis dalam C. 1) Bahasa C menyediakan prestasi yang efisien dan kawalan asas, yang sesuai untuk pembangunan enjin JavaScript. 2) Mengambil enjin V8 sebagai contoh, terasnya ditulis dalam C, menggabungkan kecekapan dan ciri-ciri berorientasikan objek C. 3) Prinsip kerja enjin JavaScript termasuk parsing, penyusun dan pelaksanaan, dan bahasa C memainkan peranan penting dalam proses ini.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual