ค้นหาเว็บไซต์

typescript - การครอบคลุมของ cypress ใช้งานไม่ได้กับ vue-property-decorator

ฉันต้องการมีการวัดความครอบคลุมของโค้ดบนฟรอนต์เอนด์ด้วย Cypress ปัจจุบัน Cypress แนะนำให้ใช้ Istanbul สำหรับการวัดความครอบคลุม น่าเสียดายที่ฉันไม่สามารถใช้มันได้คู่กับสแต็คด้านล่างนี้:

  • vue-property-decorator
  • ไซเปรส
  • การครอบคลุมโค้ดของ Istanbul
  • ไทป์สคริปต์

เนื่องจากว่า: - ฉันไม่พบวิธีทำให้ Istanbul ทำงานร่วมกับ ts-loader ได้ เพราะว่า istanbul-instrumenter-loader ใช้ Babel อยู่เบื้องหลัง - babel-loader ไม่รองรับ decorators ในลักษณะเดียวกับที่ TypeS

อ่านต่อไป →

javascript - ใช้ static ใน page object (Cypress)

จากการดูตัวอย่างต่างๆ ของการทำ e2e tests บน Cypress ฉันพบว่าหลายคนใช้วิธีการสร้างอ็อบเจ็กต์ใหม่ แทนที่จะใช้ static พวกเขาทำแบบนี้ทำไม? ทำไมไม่ใช้ static กับเมธอดของ page-object เพราะเราก็ไม่เปลี่ยนข้อมูลใดๆ ในคลาสเอง และตามนั้นก็ไม่สื่อสารกับ this และเราก็ไม่จำเป็นต้องมีหลายอินสแตนซ์ของเพจเดียวกัน (หรือ

อ่านต่อไป →

node.js - วิธีส่งคืนรายการของวัตถุจากคำสั่งที่กำหนดเองของ Cypress ในไทป์สคริปต์

ฉันกำลังใช้ Cypress สำหรับการทดสอบการรวมระบบจากต้นจนจบ (end to end Integration tests) ฉันมีกรณีการใช้งานที่เกี่ยวข้องกับการส่งคืนรายการวัตถุจากคำสั่งกำหนดเองของ Cypress และฉันมีความยากลำบากในการทำเช่นนั้น นี่คือตัวชี้โค้ดของฉัน:

อ่านต่อไป →

javascript - วิธีสอดแนมฟังก์ชันที่นำเข้าด้วย Cypress ใน TypeScript

ใน Cypress เมื่อกำลังสอดส่องฟังก์ชัน ไวยากรณ์คือ cy.spy(object, method) แต่ฉันต้องการสอดส่องฟังก์ชันที่นำเข้าจากไฟล์อื่นซึ่งไม่ได้อยู่ในออบเจกต์ มันเป็นไปได้หรือไม่?

หมายเหตุ: ฉันได้ลองวิธีต่อไปนี้เช่นกัน ซึ่งดูเหมือนไม่ได้ผล

//import { func } from 'src/file'; import * as funcObj from 'src/file'; describe('test', () => { it('test', () => { cy.spy(funcObj, 'func'); }) })

อ่านต่อไป →

TypeScript/Cypress Enum ทั่วโลกโดยไม่ต้องนำเข้า

ฉันใช้ Cypress กับคำสั่งที่กำหนดเองและกรณีทดสอบ

ฉันต้องการกำหนด enum แบบทั่วโลกบางตัวในไฟล์ เช่น:

enum MyEnum{ A = "hello", B = "goodbye" }

ตอนนี้ฉันต้องการใช้ enum นี้ในทุกไฟล์ โดยไม่ต้อง import แบบนี้:

Cypress.Commands.add('testCommand', () => { let myEnum = MyEnum.A; })

หรือ :

describe("example", () => { it("example", () =>

อ่านต่อไป →

javascript - Cypress ดูเหมือนจะเลือกองค์ประกอบผิด

เมื่อเลือกองค์ประกอบโดยใช้ id ด้วย cy.get() แล้วพิมพ์ลงไปโดยใช้ .type() ข้อมูลจะถูกพิมพ์ลงไปในองค์ประกอบที่ผิด เหตุการณ์นี้เกิดขึ้นเป็นครั้งคราวในหลายการทดสอบที่ฉันเขียน get ดูเหมือนว่าจะเลือกองค์ประกอบที่ถูกต้อง แต่แล้ว type กลับพิมพ์ลงในองค์ประกอบอื่น

ตัวอย่าง: เลือกองค์ประกอบถูกต้อง กรอกค่าลงในองค์ประกอบผิด

ฉันได้ลองทำหลายวิธีที่นี่ cy.get('#elementid').clear().type('new text') เป็น

อ่านต่อไป →

json - ฟังก์ชันเทียบเท่าของ Protractor คือ browser.executeScript() ใน Cypress คืออะไร?

ฉันกำลังพยายามแปลงการทดสอบ Protractor ของฉันไปเป็น Cypress การพยายามแปลงฟังก์ชัน browser.executeScript() ของ Protractor เป็น Cypress มักทำให้ฉันติดขัดเสมอ

ตัวอย่างเช่น ผมมีฟังก์ชัน Protractor หนึ่งฟังก์ชันที่มีลักษณะประมาณนี้ ฟังก์ชันนี้คลิกที่องค์ประกอบปุ่มในกรณีที่ this.button.click() ไม่ทำงาน:

this.button = element(by.id(button)); clickExactButton(): promise.Promise<void> { return browser.executeScript( "arguments[0].click();&

อ่านต่อไป →

typescript - ทำไม Cypress จึงรันโค้ดเก่าแทนที่จะเป็นโค้ดที่อัปเดตแล้ว?

ฉันกำลังทำงานกับ Cypress (ลองใช้เวอร์ชัน 8.0.0, 8.7.0, 7.7.0) เพื่อเขียนการทดสอบ e2e ง่าย ๆ ที่กรอกแบบฟอร์ม

เมื่อวานฉันอัปเดต .click() เป็น .click({ multiple: true }) แล้วลบมันออก ตั้งแต่นั้นเป็นต้นมา โค้ดที่ทำงานยังเป็นโค้ดเก่า ไม่ว่าจะมีการแก้ไขในเทสต์ของฉันแค่ไหน

ข้อผิดพลาดเกิดจากการคลิกด้วย multiple: true

อ่านต่อไป →

javascript - ใช้ Cypress JS กับหลายวัตถุหน้าหน้าในวิธีเดียว

ฉันกำลังประสบปัญหากับตรรกะบางอย่างเกี่ยวกับการใช้หลายวัตถุหน้าจอในหนึ่งเมธอด ฉันไม่สามารถหาวิธีใช้ตรรกะแบบนั้นได้ เช่นว่า;

นี่คือวิธีของฉันในออบเจ็กต์หน้าของฉันที่เรียกว่า usersTable;

get rolesAndStatusMenu() { return cy.get("#menu- > .MuiPaper-root > .Mui

อ่านต่อไป →

javascript - Cypress: ฉันจะรอจนกว่าหน้าต่างป๊อปอัพจะปรากฏได้อย่างไร?

ฉันมีคำถาม 2 ข้อเกี่ยวกับหน้าต่างป๊อปอัพที่ปรากฏโดยไม่มีเวลาที่ระบุ:

  1. เมื่อฉันเปิดเว็บไซต์หลังจากเวลาผ่านไป หน้าต่างป๊อปอัพจะปรากฏตรงกลางหน้าซึ่งมีแบบฟอร์มที่ฉันต้องการทดสอบ ฉันจะใช้ cy.get() กับองค์ประกอบนั้นได้อย่างไรโดยที่ไม่รู้ว่ามันจะปรากฏเมื่อไหร่

  2. และเมื่อฉันทำการทดสอบอื่น ๆ ฉันจะรออย่างไม่ประสานเวลาให้กับองค์ประกอบฟอร์มปรากฏเพื่อที่จะปิดมันได้อย่างไร (มันมีปุ่มปิด)

อ่านต่อไป →