闽江学院2015-2016学年下学期《软件测试》课程-第三次博客作业
閩江學(xué)院2015-2016學(xué)年下學(xué)期《軟件測試》課程-第三次博客作業(yè)
作業(yè)提交班級:13軟金2班全體同學(xué)
作業(yè)提交截止日期:2016年4月30日24:00前(超過截止時間提交的不給成績)
?
1、 ?某網(wǎng)站管理系統(tǒng),用戶注冊時,電話號碼為可選輸入項(xiàng),輸入格式為:區(qū)號-電話號碼—分機(jī)號,中間用“-”隔開。以下為jsp頁面上的設(shè)計(jì),且并未對輸入做任何控制。
?
系統(tǒng)現(xiàn)在需要取出中間的電話號碼部分,代碼如下:
?
/**
???? *
???? * 該方法根據(jù)用戶輸入取出中間的電話號碼部分
???? * @param strPhoneNum? 電話號碼,如:“0591-83279988—002”
???? * @return? 返回號碼部分,如:“83279988”
???? */
??? public String getPhoneNumber(String strPhoneNum){
??????? if((strPhoneNum==null) || "".equals(strPhoneNum)){
??????????? return "";
??????? }
??????? String[] arrPhone=strPhoneNum.split("-");
??????? return arrPhone[1];
??? }
?
請用你學(xué)過的測試技術(shù)和方法,找出該方法中存在的問題,并且分析出現(xiàn)該問題的原因,同時給出你的解決方案。(提示:存在的問題不止一個)
要求:
(1) 寫出問題所在
(2) 寫出問題產(chǎn)生的原因
(3) 給出修改后的代碼
?
2、? 請寫一段用于整型數(shù)組排序的代碼,說明你的設(shè)計(jì)思路,并利用錯誤推測法給出可能出錯的情況(至少5種),設(shè)計(jì)出測試用例,并利用JUnit編寫單元測試進(jìn)行測試。(假設(shè)傳入的參數(shù)已經(jīng)確定為整型數(shù)組)
要求:
(1) 寫出代碼,并符合代碼規(guī)范(命名要規(guī)范,不可直接寫在main方法中,需要有類注釋、方法注釋、以及適當(dāng)?shù)男凶⑨?#xff09;
(2) 說明你的設(shè)計(jì)思路
(3) 寫出可能出錯的情況(至少五種)
(4) 編寫JUnit單元測試,將前面給出的可能出錯的測試數(shù)據(jù)放入單元測試進(jìn)行測試
答:
1.
(1). (1)問題:沒有限制可輸入的號碼的長度,沒有判斷輸入的是否是數(shù)字還是字符串,沒有判斷是否為空
?? ?(2)條件不充分
(3)
public String getPhoneNumber(String strPhoneNum){
if((strPhoneNum==null) || "".equals(strPhoneNum)){
? ? ?if(strPhoneNum.lenth==8 && !Pattern.compile("^\\d{8}$").matcher(phoneNumber.trim?
? ?()).matches())){
? ? ? ? ? ?return "true";
}
}else{
return "false";
System.out.println("你輸入的號碼格式不正確!!!");
}
String[] arrPhone=strPhoneNum.split("-");
return arrPhone[1];
}
2.
(1).
package cn.zhuang;
?
public class test{
/**
?* 簡單排序
?* @author 莊少卿
?*/
public static int[] px (int[] a){
?????????
????? int j;
????? int temp;
????? for( int i=0;i<a.length-1;i++){?
??????????? for( 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){ //將x的值賦值給i后輸出
?? System.out.println(i + "");
}
???? ??return a;
??? }
}
??? public static void main(String[] args) {
??????? // TODO Auto-generated method stub
??????? int[] i={1,2,3,5,7};
??????? System.out.println("排序的結(jié)果為:");
? ? ? ? test(i);? //調(diào)用排序方法
??????? System.out.println();
?
??? }
(2)設(shè)計(jì)思路:采用簡單排序算法,從小到大排序
?
(3)a.輸入的值已經(jīng)已經(jīng)排序好了
?
b.數(shù)組中的部分或全部元素相同時:
c.數(shù)組沒有數(shù)字
d.數(shù)組數(shù)字0開頭
e.數(shù)組各個數(shù)字由一個數(shù)字組成且有負(fù)數(shù)
?
轉(zhuǎn)載于:https://www.cnblogs.com/123zsq/p/5575734.html
總結(jié)
以上是生活随笔為你收集整理的闽江学院2015-2016学年下学期《软件测试》课程-第三次博客作业的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: smarty应用
- 下一篇: ADO.NET封装的SqlHelper