tôi cần phải thử nghiệm một chức năng mà sẽ mở ra một tab mới trong trình duyệtLàm thế nào để giả lập đối tượng cửa sổ JavaScript bằng Jest?
openStatementsReport(contactIds) {
window.open(`a_url_${contactIds}`);
}
Tôi muốn thử chức năng mở của cửa sổ để tôi có thể xác minh địa chỉ URL chính xác được chuyển vào chức năng mở.
Sử dụng Jest, tôi không biết cách chế nhạo cửa sổ. Tôi đã cố gắng để thiết lập window.open với một chức năng giả nhưng cách này không hoạt động. Dưới đây là các trường hợp thử nghiệm
it('correct url is called',() => {
window.open = jest.fn();
statementService.openStatementsReport(111);
expect(window.open).toBeCalled();
});
nhưng nó mang lại cho tôi những lỗi
expect(jest.fn())[.not].toBeCalled()
jest.fn() value must be a mock function or spy.
Received:
function: [Function anonymous]
những gì tôi nên làm gì để các trường hợp thử nghiệm? bất cứ đề nghị hoặc gợi ý được đánh giá cao
Cố gắng này nhưng không làm việc cho tôi. Trường hợp của tôi là lạ, chế giễu công trình tại địa phương nhưng không cho một hợp nhất PR trong Travis ... bất kỳ ý tưởng? –
vẫn là lỗi tương tự. – danny
@AlexJM bạn có gặp vấn đề tương tự không? tâm trí để chia sẻ làm thế nào để bạn giả lập các đối tượng cửa sổ? – danny