软件测试第三次博客作业

1、  某网站管理系统,用户注册时,电话号码为可选输入项,输入格式为:区号-电话号码—分机号,中间用“-”隔开。以下为jsp页面上的设计,且并未对输入做任何控制。

假设系统现在需要取出中间的电话号码部分,代码如下:

/**

     * 

     *
     * @param PhoneNum  电话号码,如:“0760-8888888—011”

     * @return  返回号码部分,如:“8888888”

     */

    public String getPhoneNumber(String strPhoneNum){

        if((strPhoneNum==null) || "".equals(strPhoneNum)){

            return "";

        }

        String[] arrPhone=strPhoneNum.split("-");

        return arrPhone[1];

    }

  

请用你学过的测试技术和方法,找出该方法中存在的问题,并且分析出现该问题的原因,同时给出你的解决方案。(提示:存在的问题不止一个)

要求:

(1) 写出问题所在

A、可以无限制输入号码

B、没有定义输入的是否是数字

C、没有验证是否为空

(2) 写出问题产生的原因

A、没有限制输入的长度

B、缺少判断

C、缺少验证

(3) 给出修改后的代码

 public String getPhoneNumber(String strPhoneNum){

        if((strPhoneNum==null) || "".equals(strPhoneNum)){

            if(strPhoneNum.lenth==17){

                    return "true";

         }else{

         return "false";

         System.out.println("输入的号码格式不正确!!!");

         }

        }

        String[] arrPhone=strPhoneNum.split("-");

        return arrPhone[1];

    }

2、  请写一段用于整型数组排序的代码,说明你的设计思路,并利用错误推测法给出可能出错的情况(至少5种),设计出测试用例,并利用JUnit编写单元测试进行测试。(假设传入的参数已经确定为整型数组)

要求:

(1) 写出代码,并符合代码规范(命名要规范,不可直接写在main方法中,需要有类注释、方法注释、以及适当的行注释)

 public class SuPeng {

/**

 * 简单排序

 * 2016/04/28

 * @author

 */

public static int[] jiandan(int[] a){

     //比较和交换

      int temp;

       for( int i=0;i<a.length-1;i++){  

            for( int j=i+1;j<a.length;j++){

                if (a[i]>a[j]){  

                    temp=a[i];  

                    a[i]=a[j];  

                    a[j]=temp;  

                    }  

         } 

       }

for(int i:a){ 

System.out.println(i + "");

}

       return a;

    }

public static void main(String[] args) {

// TODO Auto-generated method stub

int[] i={1,3,0};

System.out.println("排序后的结果为:");

jiandan(i);  //调用排序jiandna方法

System.out.println();

}

}

  

(2) 说明你的设计思路

设一个整型数组int a[4],包含四个元素:

a[0]= 4,a[1] =3,a[2] =1,a[3] =2

简单比较排序最基本的操作是比较和交换。该算法的思路(从小到大排)是:a[0]元素与其后的各个元素比较,如果a[i]小于a[0],a[i]与a[0]交换,否则,不交换。

经过第一轮比较、交换,最小值元素存入a[0]。再用a[1]元素与其后的各个元素比较,如果a[i] 小于a[1], a[i]与a[1]交换,否则,不交换。经过第二轮比较、交换,次小值元素存入a[1]。继续重复上述操作,直到各元素都按值从小到大排列,排序结束。

(3) 写出可能出错的情况(至少五种)

A、数组只含有一个元素

B、数组中含有负数

C、数组中所有的元素都相同

D、数组中的元素已将排好

E、数组为空

(4) 编写JUnit单元测试,将前面给出的可能出错的测试数据放入单元测试进行测试

A、

B

C

D

时间: 2024-10-26 17:51:03

软件测试第三次博客作业的相关文章

闽江学院2015-2016学年下学期《软件测试》课程-第三次博客作业

1.  某网站管理系统,用户注册时,电话号码为可选输入项,输入格式为:区号-电话号码—分机号,中间用“-”隔开.以下为jsp页面上的设计,且并未对输入做任何控制. 假设系统现在需要取出中间的电话号码部分,代码如下: /** * * 该方法根据用户输入取出中间的电话号码部分 * @param strPhoneNum 电话号码,如:“0591-83279988—002” * @return 返回号码部分,如:“83279988” */ public String getPhoneNumber(Str

软件学院《软件测试》课程第三次博客作业

1.  某网站管理系统,用户注册时,电话号码为可选输入项,输入格式为:区号-电话号码—分机号,中间用“-”隔开.以下为jsp页面上的设计,且并未对输入做任何控制. 假设系统现在需要取出中间的电话号码部分,代码如下: /** * * 该方法根据用户输入取出中间的电话号码部分 * @param strPhoneNum  电话号码,如:“0591-83279988—002” * @return  返回号码部分,如:“83279988” */ public String getPhoneNumber(S

《软件测试》 第三次博客作业

1.  某网站管理系统,用户注册时,电话号码为可选输入项,输入格式为:区号-电话号码—分机号,中间用“-”隔开.以下为jsp页面上的设计,且并未对输入做任何控制. 假设系统现在需要取出中间的电话号码部分,代码如下: /** * * 该方法根据用户输入取出中间的电话号码部分 * @param strPhoneNum  电话号码,如:“0591-83279988—002” * @return  返回号码部分,如:“83279988” */ public String getPhoneNumber(S

C语言第三次博客作业---单层循环结构

一.PTA实验作业 题目1:最佳情侣身高差 1.实验代码 int N,i; double height; //height表示身高 char sex; //sex表示性别 (height>=1.0&&height<=3.0); (N>0&&N<=10); scanf("%d",&N); for(i=1;i<=N;i++){ scanf("\n%c%lf",&sex,&height)

13软金2班吴思婷——第三次博客作业

1. 某网站管理系统,用户注册时,电话号码为可选输入项,输入格式为:区号-电话号码—分机号,中间用“-”隔开.以下为jsp页面上的设计,且并未对输入做任何控制. 假设系统现在需要取出中间的电话号码部分,代码如下: /** * * 该方法根据用户输入取出中间的电话号码部分 * @param strPhoneNum  电话号码,如:“0591-83279988—002” * @return  返回号码部分,如:“83279988” */ public String getPhoneNumber(St

第三次博客作业

1.  某网站管理系统,用户注册时,电话号码为可选输入项,输入格式为:区号-电话号码—分机号,中间用“-”隔开.以下为jsp页面上的设计,且并未对输入做任何控制. 假设系统现在需要取出中间的电话号码部分,代码如下: /** * * 该方法根据用户输入取出中间的电话号码部分 * @param strPhoneNum  电话号码,如:“0591-83279988—002” * @return  返回号码部分,如:“83279988” */ public String getPhoneNumber(S

软件测试第6次博客作业

缺陷编号:01.01.0001           发现人:..     记录日期:2016/6/11 所属模块:注册                       确认人:..     确认日期:2016/6/11 当前状态:公开             严重度:2       优先级:2 问题概述:注册新用户是不需要输入密码 问题描述:1.执行注册操作 2.输入帐号按回车 3.显示注册成功(应提示为输入密码) 问题隔离描述:1.重复同样挂号操作(不同用户名),问题依然 2.输入密码也可以注册

第三次 博客作业

1.  某网站管理系统,用户注册时,电话号码为可选输入项,输入格式为:区号-电话号码—分机号,中间用“-”隔开.以下为jsp页面上的设计,且并未对输入做任何控制. 假设系统现在需要取出中间的电话号码部分,代码如下: /** * * 该方法根据用户输入取出中间的电话号码部分 * @param strPhoneNum 电话号码,如:“0591-83279988—002” * @return 返回号码部分,如:“83279988” */ public String getPhoneNumber(Str

第三次博客作业package com.fry; //导入java.util.Arrays; import java.util.Arrays; public class Demo1 { public static void main(String[]args){ //创建对象,对象名为hello Demo1 hello =new Demo1(); //调用方法并将返回值保存在变量中

1.  某网站管理系统,用户注册时,电话号码为可选输入项,输入格式为:区号-电话号码—分机号,中间用“-”隔开.以下为jsp页面上的设计,且并未对输入做任何控制. 假设系统现在需要取出中间的电话号码部分,代码如下: /** * * 该方法根据用户输入取出中间的电话号码部分 * @param strPhoneNum 电话号码,如:“0591-83279988—002” * @return 返回号码部分,如:“83279988” */ public String getPhoneNumber(Str