Caso de teste de unidade Jasmine para contagem dinâmica de caracteres
Alguém pode me dar um exemplo de como escrever um caso de teste para verificar se a função no evento keyup é chamada em jquery e jasmim. Eu sou bastante novo para jquery e jasmim, desculpe-me pelos erros. Este programa exibe a contagem de caracteres restantes à medida que o usuário digita os caracteres no campo de entrada. E estou preso a casos de teste que tentei da seguinte maneira
fixture.html
: Este é o dispositivo elétrico
<input id="text" name="text" size="100" maxlength="65"></input>
<span id="count"></span>
script.js
: Este é o arquivo de script com código para calcular os caracteres restantes
$(document).ready(function () {
var txt = $('#text');
var remainingChar = $('#count');
var maxLengthBox = txt.attr('maxLength');
remainingChar.html(maxLengthBox);
txt.keyup(function () {
updateChars(remainingChar, maxLengthBox, txt)
});
});
function updateChars(remainingChar, maxLengthBox, txt) {
var remChar = maxLengthBox - $(txt).val().length;
if (remChar < 0) {
remChar = 0;
}
remainingChar.html(remChar);
return remChar;
}
Este é um dos casos de teste, por favor me ajude aqui, porque não está chamando a função depois de acionar o keyup, como faço para testá-lo
1. se a funçãoupdateChars(remainingChar,maxLengthBox,txt)
está sendo chamado e executado
2. como verificar o corretoremainingChar
contagem é retornada
O TestCase começa aqui:
O código está funcionando bem, mas preciso de ajuda para escrever um caso de teste para "verificar se a contagem correta de caracteres é exibida" como no acionamentokeyup
função internaupdateChars
função não é chamada para mim no caso de teste
beforeEach(function () {
loadFixtures('Fixture.html');
txt = $('#text');
remainingChar = $('#count');
maxLengthBox = txt.attr('maxLength');
remainingChar.html(maxLengthBox);
});
it("checking remaining characters", function () {
txt.val('hello'); //entering hello into that text field
//triggering keyup and expecting this to call the updateChars function
txt.trigger('keyup');
expect(updateChars).toHaveBeenCalled():
});