用逻辑覆盖测试方法测试以下程序段

2025-03-10 08:47:45
推荐回答(3个)
回答1:

void DoWork (int x,int y,int z){1 int k=0, j=0;2 if ( (x>3)&&(z<10) )3 {4 k=x*y-1;5 j=sqrt(k);6 }7 if((x==4)||(y>5))8 j=x*y+10;9 j=j%3;10 }说明:程序段中每行开头的数字(1~10)是对每条语句的编号。(1)画出程序的控制流图(用题中给出的语句编号表示)。(2)分别以语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。题目二、折半查找请按要求对下面的java 代码进行测试。代码的功能是:用折半查找法在元素呈升序排列的数组中查找值为key 的元素。public int binSearch ( int array[], int key ) {int mid, low, high;low = 0;high = array.length-1;while ( low <= high ) {mid = (low +high)/2;if ( key = = array [mid] )return mid;else if ( key < array [mid] )high = mid -1;elselow = mid + 1}return -1;}(1) 试计算此程序段的McCabe 复杂性;(2) 用基本路径覆盖法给出测试路径;(3) 为各测试路径设计测试用例。

回答2:

逻辑覆盖测试方法:
1.语句覆盖。
2.判定覆盖。
3.条件覆盖。
4.判定条件覆盖。
5.条件组合覆盖。
6.路径覆盖。

回答3:

  void DoWork (int x,int y,int z){1 int k=0, j=0;2 if ( (x>3)&&(z<10) )3 {4 k=x*y-1;5 j=sqrt(k);6 }7 if((x==4)||(y>5))8 j=x*y+10;9 j=j%3;10 }
  说明:程序段中每行开头的数字(1~10)是对每条语句的编号。
  (1)画出程序的控制流图(用题中给出的语句编号表示)。
  (2)分别以语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。
  题目二、折半查找请按要求对下面的java 代码进行测试。
  代码的功能是:用折半查找法在元素呈升序排列的数组中查找值为key 的元素。
  public int binSearch ( int array[], int key ) {int mid, low, high;low = 0;high = array.length-1;while ( low <= high ) {mid = (low +high)/2;if ( key = = array [mid] )return mid;else if ( key < array [mid] )high = mid -1;elselow = mid + 1}return -1;}
  (1) 试计算此程序段的McCabe 复杂性;
  (2) 用基本路径覆盖法给出测试路径;
  (3) 为各测试路径设计测试用例。