Tôi đang học cách kiểm tra đơn vị bằng cách sử dụng mô phỏng nút mô-đun với sinon.Giả sử một phương pháp lớp học sử dụng chế nhạo và sinon
Chỉ sử dụng chế độ nhạo báng và lớp đơn giản tôi có thể tiêm thành công mô hình. Tuy nhiên tôi muốn tiêm một cuống xoang thay vì một lớp học đơn giản nhưng tôi gặp rất nhiều rắc rối với điều này.
Lớp Tôi cố gắng để nhạo báng:
function LdapAuth(options) {}
// The function that I want to mock.
LdapAuth.prototype.authenticate = function (username, password, callback) {}
Và đây là đoạn code Tôi hiện đang sử dụng trong chức năng của tôi beforeEach():
beforeEach(function() {
ldapAuthMock = sinon.stub(LdapAuth.prototype, "authenticate", function(username, password, callback) {});
mockery.registerMock('ldapauth-fork', ldapAuthMock);
mockery.enable();
});
afterEach(function() {
ldapAuthMock.restore();
mockery.disable();
});
Tôi đã cố gắng để nhạo báng/khai báo lớp LdapAuth theo nhiều cách khác nhau mà không thành công và mã ở trên chỉ là phiên bản mới nhất không hoạt động.
Vì vậy, tôi chỉ muốn biết cách chế nhạo thành công này bằng cách sử dụng tội lỗi và chế nhạo.
điều gì sẽ xảy ra nếu bạn muốn tạo trình xây dựng? –