Mocha'dan şaka yapmak için takas yapıyorum ve bir tepki yöntemi üzerinde casusluk yapmanın bir yolu olup olmadığını merak ediyorum. örnek benim bileşeninde aşağıdaki yöntemi var diyelim İçin (sdk kütüphane yok saymak, sadece bir jquery ajax çağrısı oluşturur): Sinon kullanmaJest casus fonksiyonelligi
getData() {
sdk.getJSON('/someURL').done(data => {
this.setState({data});
});
}
ben şöyle prototip casusluk tarafından bu test olacağını:
it('should call getData',() => {
sinon.spy(Component.prototype, 'getData');
mount(<Component />);
expect(Component.prototype.getData.calledOnce).to.be.true;
});
Bu, yönteme alay etmeden kod kapsamı sağlar. Şakada benzer işlevler var mı?
DÜZENLEME: Ayrıca, bu işlev yoksa, API çağrılarını sınamak için bir sonraki en iyi strateji nedir?
Bu davranış aynı değil "sinon.spy" 'de olduğu gibi, 'getData' üzerine yazılırken,' sinon.spy' ve 'jest.spyOn' da orijinal yöntemi çağırır. –
Doğru! .. cevabı düzeltti –