Tôi đang viết thông số kỹ thuật cho các trường hợp thử nghiệm khác nhau cho Jasmine và QUnit để so sánh chúng và chúng trông giống nhau trước khi tôi cần viết một bài kiểm tra để kiểm tra xem sự kiện có được gắn với phần tử hay không.Có tương tự spyOn trong QUnit không?
tổ chức sự kiện ràng buộc trông giống như
$('.page').live('click', function() { page_clicked($(this)) });
page_clicked
là một phương pháp riêng nhưng nó đòi hỏi một phương pháp nào của module khác.
Dưới đây là một spec Jasmine:
it('should bind events to pages', function() {
spyOn(search, 'get_results');
$('.page:eq(0)').trigger('click');
expect(search.get_results).toHaveBeenCalled();
});
thử nghiệm này hoạt động. Bây giờ tôi đang cố gắng để viết cùng một bài kiểm tra cho QUnit và không thể tìm thấy bất cứ điều gì tương tự như spyOn. Làm thế nào để viết bài kiểm tra này cho QUnit?
Cố gắng để sao chép/dán mã của bạn nhưng 'assert (spy.calledOnce) 'ném' khẳng định không defined' và 'sinon.assert.called (gián điệp)' ném 'dự kiến get_results đã được gọi ít nhất một lần nhưng không bao giờ được gọi là ' –
Ok nó đã được sao chép/dán từ doku doon, tôi đã sửa nó. –
Vẫn không hoạt động. 'dự kiến get_results được gọi một lần nhưng được gọi là 0 lần'. Tôi đặt một cảnh báo sau khi 'get_results' gọi trong' page_clicked' chức năng và cảnh báo nhắc nhở, Jasmine kiểm tra đi nhưng QUnit + SinonJS không. –