栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Java

软件测试实例

Java 更新时间:发布时间: 百科书网 趣学号
软件测试实例(一)
  1. 给你一个字符串,你怎么判断是不是IP地址?手写这段代码,并写出测试用例:

IP格式:(1255).(0255).(0255).(0255)
方法一:给予对字符串的处理

public static void main(String[]args){
Scanner sanner=new Scanner(System.in);
String ipStr=scanner.next();
boolean islpLegal=islpLegal(ipStr);
if(islpLegal){
System.out.printIn(ipStr+"合法");
}
else{System.out.printIn(ipStr+"非法");
}
}
public static boolean islpLegal(String str){
//检查IP是否为空
if(str==null){
return false;
}
//检查IP长度,最短为:X.X.X.X(7位),最长为:xxx.xxx.xxx.xxx(15位)
if(str.length()<7||str.length()>15{
return false;
}
//对输入字符长的首末字符判断,如果是“.”则是非法IP
if(str.charAt(0)=='.'||str.charAt(str.length()-1=='.'{
return false;
}
//按“.”分割字符串。并判断分割出来的个数,如果不是4个,则是非法IP
String[] arr=str.split("\.");
if(arr.length!=4){
retrun false;
}
//对分割出来的字符串进行单独判断
for(int i=0;i
//如果每个字符串不是以为字符,且一'0'开头,则是非法的IP,如:01.002.03.004
if(arr[i].length()>1&&arr[i].charAt(0)=='0'){
return false;
}
//对每个字符串的每个字符进行逐一判断,如果不是数字0~9,则是非法的IP
for(int j=0;j
if(arr[i].chaAt(j)<'0'||arr[i].charAt(j)>'9'){
return false;
}

}
}
//对拆分的每一个字符串进行转换成数字,并判断是否在0~255
for(int i=0;i
int temp=Integer.parseInt(arr[i]);
if(i==0){
if(temp<1||temp>255){
return false;
}
else{
if(temp<0||temp>255){
return false;
}



}}
return true;
}

方法二:正则表达式

public static void main(String[] args){
Scanner scanner=new Scanner(System.in);
String ipStr=scanner.next();
boolean islPLegal=isipLegal(ipStr);
if(isipLegal){
System.out.printin(ipStr+"合法");
}
else{
System.out.printin(ipStr+"非法");
}
}
public static boolean isipLegal(String ipStr){
String ipRegEx="^([1-9]|([1-9[0-9)|(1[0-9][0-9])|(2[0-4][0-9])|(25[0-5]))(\.([0-9]|([1-9][0-9])|(1[0-9][0-9])|(2[0-4][0-9])|(25[0-5]))){3}$";
Pattern pattern =Pattern.compile(ipRegEx);
Matcher matcher=pattern.matcher(ipStr);
if(matcher.matches()){
return true;
}else{
return false;
}
}
测试用例:
等价划分法:


  1. 请进行测试用例设计:遗传数字,瑞年的判断
    参考回答:
    判断闰年的标准是:能朱鞥出4且不能整除100,能整除400.设定合法的年份1-9999
public class Test2{
public static void main (String[] args){
Scanner in =new Scanner (System.in);
int year=in.nextTnt();
if(year<=0||year>9999){
Systen.out.printin("请输入正确的年份");
}
if((year%4==0&&year%100!=0)||year%400==0){
Systen.out.printin("闰年");
}
else{
Systen.out.printin("不是闰年");
}

测试用例:

  1. 请你说一说简单用户界面登录过程都需要做哪些分析?
    参考回答:
    一,功能测试
    1.输入正确的用户名和密码,点击提交按钮,验证是否能正确登录。
    2.输入错误的用户名或者密码,验证登录会失败,并且体术相应的错误信息。
    3.登录成功是佛跳转到正确的页面
    4.用户名和密码,如果太长或者太短,应该怎么处理
    5.用户名和密码,中油特殊字符(比如空格,和其他非英文的情况)
    6.记住用户名的功能
    7.登录失败后,不能记录密码的功能
    8.用户名和密码前后有空格的功能
    9.密码是否非明文显示,使用星号圆点等符号代替。
    10.牵扯到验证码的,还要考虑文字是否扭曲过度导致辨认难度大,考虑颜色(色盲使用者),刷新或换一个按钮是否好用。
    11.登录页面中的注册,忘记密码,登出用另一账号登录等链接是否正确。
    12.输入密码的时候,大写键盘开启的时候要有提示信息。
    13.什么都不输入,点击提交按钮,检查提示信息。

二.界面测试
1,布局是否合理,textbox和按钮是否整齐。
2,textbox和按钮的长度,高度是否符合要求
3,界面的设计风格是否与UI的设计风格统一。
4.界面中的文字简洁易懂,没有错别字。

三,性能测试
1.打开登录页面,需要的时间是否在需要要求的时间内。
2.输入正确的用户名和密码后,检查登录成功跳转到新页面的时间是否在需求要求的时间内。
3.模拟大量用户同时登录,检查一定压力下能否正常登录跳转。

四.安全性测试
1.登录成功后生成的Cookie,是否是httponly(否则容易被脚本盗取)
2.用户名和密码是否通过加密的方式,发送给WEB服务器。
3.用户名和密码的验证,应该是用服务器端验证,而不能单单是在客户端用javascript验证。
4.用户名和密码框的输入框,应该禁止输入脚本(防止XSS攻击)
5,用户名和密码的输入框,应该屏蔽SQL注入攻击
6.防止暴力破解,检测是否有错误登录的次数限制。
7.是否支持多用户在同一机器上登录
8.同一用户能否在多台机器上登录

五.可用性测试
1.是否可以用全键盘操作,是否有快捷键
2.输入用户名,密码后按回车,是否可以登录。
3.输入框能否可以以TAB键切换。
六。兼容性测试
1.不同浏览器下能否显示正常且功能正常(IE,6,7,8,9,Firefox,Chrome,Safari,等)
2.同种浏览器不同版本下能否显示正常且功能正常
3.不同的平台是否能正常工作,比如Windows,Mac
4.移动设备上是否正常工作,比如iphone,Andriod.
5.不同分辨率下显示是否正常。

七。本地化测试
1.不同语言环境下,页面的显示是否正确。

  • 请对这个系统做出测试用例:一个系统,多个摄像头,抓拍车牌,识别车牌,上传网上,网上展示
  • 参考回答:
    功能:
    1.每个摄像头都能抓拍车牌
    2.每个摄像头抓拍的车牌能正常交给系统处理
    3.系统能正确识别车牌
    4.系统能将识别出的车牌上传
    5.上传至网络的车牌能够正常展示出来
    一.功能测试
    1.使用正常的车牌,保持车牌静止,检查每个摄像头是否能抓拍车牌
    2.使用类似非车牌的写有字的纸板,检查每个摄像头是否抓拍;
    3.使用正常的车牌,保持车牌较高速移动,检查每个摄像头是否能抓拍车牌。
    4.在多种情况下检查每个摄像头抓拍到底车牌能否正常交给系统处理,如临时断电,断网能否正常将数据交给系统。
    5.使用抓拍到的正常的车牌,交由系统处理,检查系统能否识别车牌。
    6.使用非车牌的其他图片,交由系统处理,检查系统能否识别。
    7.在多种情况下检查系统能否将正常识别出的车牌进行上传,如临时断电,断网后未上传数据是否能继续上传。
    8.构造非车牌的其他内容的数据,检查系统能否将异常内容进行上传。
    9.上传至网络的车牌能否正常识别出来
    10.上传非车牌的其他内容的数据,检查能否正常显示出来。
    二.性能测试
    1.同时向一个摄像头展示多个静止的车牌,检查摄像头能否抓拍到多个车牌。
    2.同时向一个摄像头展示多个较高速运动的车牌,检查摄像头能否抓拍到多个车牌
    3.抓拍后,检查系统识别车牌的时间是否在需求要求的时间内;
    4.模拟大量抓拍照片同时交由系统处理,检查一定压力下系统能否正常识别车牌
    5.模拟大量车牌同时上传,检查一定压力下能否上传成功。
    三。安全性测试
    1.检查是否能够通过给车牌加装饰等方式,使摄像头无法抓拍或抓拍后系统无法正常识别车牌。
转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/959805.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号