2009-06-21 13 views
14

Estoy buscando un marco maduro que puede hacer burla de Javascript, especialmente en el área AJAX y JSON.JQuery Mocking

¿Existe algún marco de burla existente para Javascript (y/o JQuery) que se utiliza y puede recomendar?

Editar: He evaluado jqmock y jqunit. Parece que es el único marco que puede hacer basic library mocking and stubbing, pero no puede hacer una llamada AJAX.

+1

http://msdn.microsoft.com/en-us/scriptjunkie/ff452703 tiene un buen artículo sobre jQuery TDD – jamiebarrow

Respuesta

4

Prefiero el código modular. ¡El código modular es fácil de burlar!

var function fetchAjaxData(){ 
    // Perform ajax request. 
    // Call 'update' with the data in question. 
} 

var update = function(ajaxData){ 
    // do things with ajaxData 
} 

Con este tipo de código, todo lo que necesita hacer es llamar a la función 'actualización' para burlarse de una petición Ajax.

+0

... salvo cuando el código que prueba se abstraiga dentro, p. un IIFE y abrirlo para probar rompería el diseño del dominio. Así que uno tiende a ir por la ruta de las burlas de las dependencias, de lo que se trataría. – Cornelius

2

Burlarse está incluido en el marco de prueba jasmine también. I utilizado yo mismo para burlarse cabo jQuery.ajax:

spyOn(jQuery, 'ajax').andCallFake(function(value) { 
    value.success(data); 
});