คำสั่ง cypress custom "cy.api" สำหรับการทดสอบ API แบบ end-to-end
คำสั่งนี้ทำให้คำขอ HTTP ไปยังเซิร์ฟเวอร์ภายนอกจากนั้นแสดงผลอินพุตและเอาต์พุตซึ่งเว็บแอปพลิเคชันมักจะอยู่ในนักวิ่งทดสอบไซเปรส หากมีบันทึกฝั่งเซิร์ฟเวอร์โดยใช้ @bahmutov/all-logs คำสั่งนี้จะดึงข้อมูลและแสดงผลด้วย นี่คือผลลัพธ์ทั่วไป:

npm install --save-dev @bahmutov/cy-api
หรือ
yarn add -D @bahmutov/cy-api
เพิ่มบรรทัดต่อไปนี้ในไฟล์สนับสนุน Cypress ของคุณ
// usually cypress/support/index.js
import '@bahmutov/cy-api' สิ่งนี้จะเพิ่มคำสั่งใหม่ cy.api สำหรับการร้องขอ API
| var env | ค่าเริ่มต้น | คำอธิบาย |
|---|---|---|
| cypress_api_messages | จริง | แสดงและโทรไปยังบันทึกเซิร์ฟเวอร์ API |
| cypress_api_show_credentials | เท็จ | แสดงรหัสผ่านการรับรองความถูกต้อง |
โดยค่าเริ่มต้นการตอบสนองการพิมพ์ cy.api ในเบราว์เซอร์ หากต้องการมีพฤติกรรมเช่นเดียวกับ cy.request และใช้ cy.visit ปกติคุณต้อง desactivate apiDisplayRequest :
it ( 'my test without displaying request' , { apiDisplayRequest : false } , ( ) => {
cy . api ( {
url : '/' ,
} )
} ) หากการใช้ TypeScript กับ Cypress คุณสามารถเพิ่มประเภทใน tsconfig.json ของคุณ
{
"compilerOptions" : {
"types" : [ " cypress " , " @bahmutov/cy-api " ]
}
}ผู้แต่ง: Gleb Bahmutov <[email protected]> © 2019
ใบอนุญาต: MIT - ทำอะไรกับรหัส แต่อย่าโทษฉันถ้ามันไม่ทำงาน
การสนับสนุน: หากคุณพบปัญหาใด ๆ กับโมดูลนี้อีเมล / ทวีต / เปิดปัญหาบน GitHub
ลิขสิทธิ์ (c) 2019 Gleb Bahmutov <[email protected]>
ได้รับอนุญาตโดยไม่เสียค่าใช้จ่ายสำหรับบุคคลใด ๆ ที่ได้รับสำเนาซอฟต์แวร์นี้และไฟล์เอกสารที่เกี่ยวข้อง ("ซอฟต์แวร์") เพื่อจัดการในซอฟต์แวร์โดยไม่มีการ จำกัด รวมถึง แต่ไม่ จำกัด เฉพาะสิทธิ์ในการใช้คัดลอกแก้ไขผสาน เผยแพร่แจกจ่าย sublicense และ/หรือขายสำเนาของซอฟต์แวร์และอนุญาตให้บุคคลที่ซอฟต์แวร์ได้รับการตกแต่งให้ทำเช่นนั้นภายใต้เงื่อนไขดังต่อไปนี้:
ประกาศลิขสิทธิ์ข้างต้นและประกาศการอนุญาตนี้จะรวมอยู่ในสำเนาทั้งหมดหรือส่วนสำคัญของซอฟต์แวร์
ซอฟต์แวร์มีให้ "ตามสภาพ" โดยไม่มีการรับประกันใด ๆ ไม่ว่าโดยชัดแจ้งหรือโดยนัยรวมถึง แต่ไม่ จำกัด เฉพาะการรับประกันความสามารถในการค้าการออกกำลังกายสำหรับวัตถุประสงค์เฉพาะและการไม่เข้าร่วม ไม่ว่าในกรณีใดผู้เขียนหรือผู้ถือลิขสิทธิ์จะต้องรับผิดชอบต่อการเรียกร้องความเสียหายหรือความรับผิดอื่น ๆ ไม่ว่าจะเป็นการกระทำของสัญญาการละเมิดหรืออื่น ๆ ซอฟต์แวร์.