Hola amigos! Empece a trabajar con
Qunit para testear
JavaScript pero la verdad es que
no entiendo como hacer los test para funciones que ya estan creadas. Por que crear una funcion en el mismo test es muy sencillo pero como compruebo una funcion que ya existe que debe, o no(en otras ocaciones), retornar un objeto? Les pongo unos ejemplos que hice yo mismo que NO son correctos para el test a ver si alguien me puede iluminar ya que la documentacion que encuentro es bastante vaga y no se entiende muy bien cuando se trata de funciones que vienen desde un archivo de origen externo.
tengo por ejemplo un test que se llama removeSpinner(); y lo que:
Código HTML:
test('removeSpinner',function(){
removeSpinner();
$("#loading").get(0);
});
donde el objeto a devolver seria este id="loading"
Código HTML:
$("#loading").get(0);
Este aqui se que es correcto por que me retorna un objeto o mas bien el elemento en la consola pero en Qunit me retorna esto:
Expected at least one assertion, but none were run - call expect(0) to accept zero assertions.
Source:
@http://localhost/test_tsr_common_scripts/qunit.html?testNumber=41:455:5
@http://localhost/test_tsr_common_scripts/qunit.html?testNumber=41:55:1
y Como no podia faltar un ejemplo de mis mas bonitos errores:
Código HTML:
test('showSuccess',function(){
showSuccess();
$("section.success").css("display", "none");
$("section.success").show();
QUnit.equal($("section.success").css("display"), undefined, "The element should be visible");
});
Aca estoy creando la funcion en el mismo test y obviamente me va a salir true o mas bien que paso el test, cuando en realidad... ni idea si lo paso o no por que no estoy llamando ningun objeto que deberia retornar en el DOM... estoy en lo correcto o ya estoy tan entreverado qe parezco un borracho hablando de politica?
No entiendo muy bien como hacer esto y me urge aprender por que cada vez me siento mas novato con los frameworks de test...
Gracias a todo el que se tome el tiempo de mirar un poquito :)