Perintah khusus Cypress "cy.api" untuk pengujian API ujung ke ujung
Perintah ini membuat permintaan HTTP ke server eksternal, kemudian membuat input dan output di mana aplikasi web biasanya berada di cypress test runner. Jika ada log sisi-server menggunakan @Bahmutov/All-Logs, perintah ini mengambilnya dan juga. Ini output khas:

npm install --save-dev @bahmutov/cy-api
atau
yarn add -D @bahmutov/cy-api
Tambahkan baris berikut ke file dukungan cypress Anda
// usually cypress/support/index.js
import '@bahmutov/cy-api' Ini akan menambahkan perintah baru cy.api untuk membuat permintaan API.
| var env | nilai default | keterangan |
|---|---|---|
| Cypress_api_messages | BENAR | Tunjukkan dan lakukan panggilan ke log server API |
| Cypress_api_show_credentials | PALSU | Tampilkan kata sandi otentikasi |
Secara default cy.api cetak respons di browser. Untuk memiliki perilaku yang sama dengan cy.request dan Gunakan cy.visit secara normal, Anda perlu menolak apiDisplayRequest :
it ( 'my test without displaying request' , { apiDisplayRequest : false } , ( ) => {
cy . api ( {
url : '/' ,
} )
} ) Jika Anda menggunakan naskah dengan cypress, Anda dapat menambahkan tipe di tsconfig.json Anda
{
"compilerOptions" : {
"types" : [ " cypress " , " @bahmutov/cy-api " ]
}
}Penulis: Gleb Bahmutov <[email protected]> © 2019
Lisensi: MIT - Lakukan apapun dengan kode, tetapi jangan salahkan saya jika tidak berhasil.
Dukungan: Jika Anda menemukan masalah dengan modul ini, email / tweet / buka masalah di github
Hak Cipta (C) 2019 Gleb Bahmutov <[email protected]>
Izin dengan ini diberikan, gratis, kepada siapa pun yang mendapatkan salinan perangkat lunak ini dan file dokumentasi terkait ("Perangkat Lunak"), untuk menangani perangkat lunak tanpa pembatasan, termasuk tanpa batasan hak untuk menggunakan, menyalin, memodifikasi, menggabungkan , menerbitkan, mendistribusikan, sublisense, dan/atau menjual salinan perangkat lunak, dan untuk mengizinkan orang -orang yang dilengkapi dengan perangkat lunak untuk melakukannya, tunduk pada kondisi berikut:
Pemberitahuan hak cipta di atas dan pemberitahuan izin ini harus dimasukkan dalam semua salinan atau bagian substansial dari perangkat lunak.
Perangkat lunak ini disediakan "sebagaimana adanya", tanpa jaminan apa pun, tersurat maupun tersirat, termasuk tetapi tidak terbatas pada jaminan dapat diperjualbelikan, kebugaran untuk tujuan tertentu dan nonpringement. Dalam hal apa pun penulis atau pemegang hak cipta tidak akan bertanggung jawab atas klaim, kerusakan atau tanggung jawab lainnya, baik dalam tindakan kontrak, gugatan atau sebaliknya, timbul dari, di luar atau sehubungan dengan perangkat lunak atau penggunaan atau transaksi lain dalam PERANGKAT LUNAK.