当我们想要从客户端获取用户信息输入的信息进行条件判断时,我们常用的条件判断语句:1、if else 2、switch等。
往往会直接获取用户的输入信息进行判断,这时测试人员就起到很大作用,当用户对输入框不进行任何内容输入,直接操作(登陆、查询、判断、计算等)。if else 就会出现自带bug,返回if语句中的一个布尔值:true,执行if中的事件。
因此,在做用户操作判断时,首先要考虑到用户不输入内容时的情况。
if else bug的影响:
例如:当用户输入银行账户、微信账号等,在不输入密码情况下,直接点击登录,这时系统默认情况下是可以执行的,结果会给用户带来很大的损失。
因此,在开发过程中程序员要有一个测试人员的思想,全局考虑问题。
例如一个小程序:输入年份判断是闰年还是平年
<script type="text/javascript">
btn.onclick = function() {
var year = ipt.value;
if(year=="") {
//未输入值进行计算bug,首先判断输入值是否为空
var a= prompt("请输入您要查询的年份");
ipt.value = a;
} else if(year%4 == 0 && year%100 == 1 || year%400 == 0){
box.innerHTML ="闰年"
}else{
box.innerHTML ="平年"
}
}
</script>
如果下面第1行代码判断放在第2行前做判断
else if(year%4 == 0 && year%100 == 1 || year%400 == 0)
if(year=="")
用户不输入任何内容,直接点击判断,系统会直接执行:
box.innerHTML ="闰年"