0
我今天的最后一个问题并不是真正的问题,我想对您创建的JasmineJS测试代码有意见,以测试用户是否输入了字母数字。测试输入是字母数字还是不使用JasmineJS
我有称为用户名的HTML输入框:
Username: <input type="text" name="username" id="username" class="input" value="testinput" />
我创建Javascript函数来过滤用户输入,如果输入是字母数字或没有。
function acceptOnlyAlphanumeric() {
var usernameInput = document.register.username.value;
if(!/^[a-zA-Z0-9]+$/.test(usernameInput)) {
console.log("Please enter only numbers and letters. No special character!")
return true;
}
return false;
}
在我的JasmineJS文件夹中,我创建了一个服务文件来测试过滤器用户输入功能。我的服务是这样的:
Services = {
userFilter : function() {
var usernameInput = 'ThisIsAnAlphanumeric112233';
if(!/^[a-zA-Z0-9]+$/.test(usernameInput)) {
console.log("Please enter only numbers and letters. No special character!")
return true;
}
return false;
}
};
然后,我的茉莉花脚本是这样的:
describe("Test if user enters an acceptable user input which is alphanumeric", function() {
it("Should test if user enters alphanumeric or not", function() {
expect(Services.userFilter()).toEqual(false);
});
});
万物工作得很好,但我关心的测试的有效性。底部的问题是,这是用JasmineJS测试JavaScript函数的正确方法吗?谢谢
OMG非常感谢你。 。你刚刚打开了我的第三只眼睛叫JasmineJs。 。 :)我现在完成了JasmineJS的基本知识。非常感谢您的示范。 。 :)解决 – Neil
所以为了澄清,可以将参数“userInput”更改为任何参数名称,如“input”或“inputValue”。 。 ? :) – Neil
我测试了它,并改变参数userInput后仍然工作。 – Neil