(1)列出所选取判定语句中每个参数所划分的有效等价类
(2)列出弱一般等价类的JUnit测试用例集;运行该测试用例集并给出运行后语句覆盖、函数覆盖、以及判定覆盖的覆盖率截图(10分)
Triangle T1=new Triangle(2,3,4);
Triangle T2=new Triangle(5,6,6);
(3)列出强一般等价类的JUnit测试用例集;运行该测试用例集并给出运行后语句覆盖、函数覆盖、以及判定覆盖的覆盖率截图(10分)
共8个
Triangle T1=new Triangle(3,4,4);
Triangle T2=new Triangle(3,4,7);
Triangle T3=new Triangle(3,6,4);
Triangle T4=new Triangle(3,6,7);
Triangle T5=new Triangle(6,4,4);
Triangle T6=new Triangle(6,4,7);
Triangle T7=new Triangle(6,6,4);
Triangle T8=new Triangle(6,6,7);
(4)列出弱健壮等价类的JUnit测试用例集;运行该测试用例集并给出运行后语句覆盖、函数覆盖、以及判定覆盖的覆盖率截图(10分)
8个
Triangle T1=new Triangle(3,4,4);
Triangle T2=new Triangle(3,4,7);
Triangle T9=new Triangle(-1,4,4);
Triangle T10=new Triangle(9,4,4);
Triangle T11=new Triangle(3,-1,4);
Triangle T12=new Triangle(3,9,4);
Triangle T13=new Triangle(3,4,-1);
Triangle T14=new Triangle(3,4,9);
(5)列出强健壮等价类的JUnit测试用例集;运行该测试用例集并给出运行后语句覆盖、函数覆盖、以及判定覆盖的覆盖率截图(10分)
64个
Triangle T1=new Triangle(3,4,4);
Triangle T2=new Triangle(3,4,7);
Triangle T3=new Triangle(3,6,4);
Triangle T4=new Triangle(3,6,7);
Triangle T5=new Triangle(6,4,4);
Triangle T6=new Triangle(6,4,7);
Triangle T7=new Triangle(6,6,4);
Triangle T8=new Triangle(6,6,7);
Triangle T9=new Triangle(-1,4,4);
Triangle T10=new Triangle(9,4,4);
Triangle T11=new Triangle(3,-1,4);
Triangle T12=new Triangle(3,9,4);
Triangle T13=new Triangle(3,4,-1);
Triangle T14=new Triangle(3,4,9);
Triangle T15=new Triangle(3,-1,-1);
Triangle T16=new Triangle(3,9,-1);
Triangle T17=new Triangle(3,-1,9);
Triangle T18=new Triangle(3,9,9);
Triangle T19=new Triangle(-1,4,-1);
Triangle T20=new Triangle(9,4,-1);
(6)列出一般边界值的JUnit测试用例集;运行该测试用例集并给出运行后语句覆盖、函数覆盖、以及判定覆盖的覆盖率截图(10分)
13个
Triangle T1=new Triangle(1,4,4);
Triangle T2=new Triangle(3,1,4);
Triangle T3=new Triangle(3,4,1);
Triangle T4=new Triangle(8,4,4);
Triangle T5=new Triangle(3,8,4);
Triangle T6=new Triangle(3,4,8);
Triangle T7=new Triangle(0,4,4);
Triangle T8=new Triangle(3,0,4);
Triangle T9=new Triangle(3,4,0);
Triangle T10=new Triangle(9,4,4);
Triangle T11=new Triangle(3,9,4);
Triangle T12=new Triangle(3,4,9);
Triangle T13=new Triangle(3,4,4);
(7)列出一般最坏情况边界值的JUnit测试用例集;运行该测试用例集并给出运行后语句覆盖、函数覆盖、以及判定覆盖的覆盖率截图(10分)
125个
Triangle T1=new Triangle(3,4,4);
Triangle T2=new Triangle(3,1,4);
Triangle T3=new Triangle(3,8,4);
Triangle T4=new Triangle(3,0,4);
Triangle T5=new Triangle(3,9,4);
Triangle T6=new Triangle(3,4,1);
Triangle T7=new Triangle(3,4,8);
Triangle T8=new Triangle(3,4,0);
Triangle T9=new Triangle(3,4,9);
……
(8)列出健壮边界值的JUnit测试用例集;运行该测试用例集并给出运行后语句覆盖、函数覆盖、以及判定覆盖的覆盖率截图(10分)
19个
Triangle T1=new Triangle(3,4,4);
Triangle T2=new Triangle(3,1,4);
Triangle T3=new Triangle(3,8,4);
Triangle T4=new Triangle(3,0,4);
Triangle T5=new Triangle(3,9,4);
Triangle T6=new Triangle(3,4,1);
Triangle T7=new Triangle(3,4,8);
Triangle T8=new Triangle(3,4,0);
Triangle T9=new Triangle(3,4,9);
……
(9)列出健壮最坏情况边界值的JUnit测试用例集;运行该测试用例集并给出运行后语句覆盖、函数覆盖、以及判定覆盖的覆盖率截图(10分)
7^3=343个
Triangle T1=new Triangle(3,4,4);
Triangle T2=new Triangle(3,1,4);
Triangle T3=new Triangle(3,8,4);
Triangle T4=new Triangle(3,0,4);
Triangle T5=new Triangle(3,9,4);
Triangle T6=new Triangle(3,4,1);
Triangle T7=new Triangle(3,4,8);
Triangle T8=new Triangle(3,4,0);
Triangle T9=new Triangle(3,4,9);
……
package net.mooctest;
import static org.junit.Assert.*;
import org.junit.Test;
public class TriangleTest {
Triangle T1=new Triangle(3,4,4);
Triangle T2=new Triangle(3,4,7);
Triangle T3=new Triangle(3,6,4);
Triangle T4=new Triangle(3,6,7);
Triangle T5=new Triangle(6,4,4);
Triangle T6=new Triangle(6,4,7);
Triangle T7=new Triangle(6,6,4);
Triangle T8=new Triangle(6,6,7);
Triangle T9=new Triangle(-1,4,4);
Triangle T10=new Triangle(9,4,4);
Triangle T11=new Triangle(3,-1,4);
Triangle T12=new Triangle(3,9,4);
Triangle T13=new Triangle(3,4,-1);
Triangle T14=new Triangle(3,4,9);
Triangle T15=new Triangle(3,-1,-1);
Triangle T16=new Triangle(3,9,-1);
Triangle T17=new Triangle(3,-1,9);
Triangle T18=new Triangle(3,9,9);
Triangle T19=new Triangle(-1,4,-1);
Triangle T20=new Triangle(9,4,-1);
@Test
public void testIsTriangle() {
assertEquals(true, T1.isTriangle(T1));
assertEquals(false,T2.isTriangle(T2));
assertEquals(true, T3.isTriangle(T3));
assertEquals(true, T4.isTriangle(T4));
assertEquals(true, T5.isTriangle(T5));
assertEquals(true, T6.isTriangle(T6));
assertEquals(true, T7.isTriangle(T7));
assertEquals(true, T8.isTriangle(T8));
assertEquals(false, T9.isTriangle(T9));
assertEquals(false, T10.isTriangle(T10));
assertEquals(false, T11.isTriangle(T11));
assertEquals(false, T12.isTriangle(T12));
assertEquals(false, T13.isTriangle(T13));
assertEquals(false, T14.isTriangle(T14));
assertEquals(false, T15.isTriangle(T15));
assertEquals(false, T16.isTriangle(T16));
assertEquals(false, T17.isTriangle(T17));
assertEquals(false, T18.isTriangle(T18));
assertEquals(false, T19.isTriangle(T19));
assertEquals(false, T20.isTriangle(T20));
}
}