51Testing软件测试论坛

标题: 写出流程控制图,程序控制图,找出测试路径,写出测试用例 [打印本页]

作者: 橙子    时间: 2007-6-25 18:59
标题: 写出流程控制图,程序控制图,找出测试路径,写出测试用例
最近在忙于找工作,在面试过程中碰到一题,模糊的概念,只有在学校里正经地学过,在测试工作中还真是很少接触,可能正规的公司写测试用例设计时会有此方法.

凭印象写下此题,寻求此答案.

三条直线A,B,C,看是否能构成三角形,如果不能构成,出现错误提示;如果能构成三角形,则计算周长,如果是两边相等则显示是等腰三角形,如是三边相等,为等边三角形.请写出程序控制图,流程控制图,找出测试路径,根据路径写出测试用例.


谢谢
作者: ailice    时间: 2007-6-26 11:05
sdlkfj6 我也在等高手支招,非常感谢!
作者: 橙子    时间: 2007-6-27 11:09
看来想得到参考答案很难;  先说说我写测试用例的想法吧

   首先考虑一下题中给出的对输入条件的要求:
   1,  3个数(这里就可能只给一边或两边)
   2,  非零数(一边为零或两边为零)
   3,  需是正数(一边或两边为负数)
   4,  应满足构成三角形的条件,即任意两边和要大于第三边长(a+b>c,a+c>b,b+c>a, 同时也要写测试用例a+b<c,a+b=C,a+c<b,a+c=b,b+c<a,b+c<a)
   5,等腰三角形的用例(任意两边相等)
   6,等边三角形的用例(三边相等)
   7,还应该有字符的错误用例
作者: duola1119    时间: 2007-6-27 16:42
标题: 回复 #1 橙子 的帖子
边 A,B,C;
if(A,B,C能组成三角形)
{
    println('A'+'B'+'C');
    if(A=B||A=C||B=C)
     {
         println("等腰三角形");
         if(A=B=C)
              {
                println("等边三角形");
              }
         else return 边;
    }
    else return 边;
}
else println("无法组成三角形");
作者: duola1119    时间: 2007-6-27 16:49
标题: 流图
附件是流图
作者: duola1119    时间: 2007-6-27 17:15
另外的两个答案明天我再来写.有不对的地方情指正.
作者: 橙子    时间: 2007-6-27 23:23
首先十分感谢duola1119 的回答,谢谢..  我正在看....
作者: duola1119    时间: 2007-6-28 08:43
2描述的是程序控制图.
3描述的是流程控制图.这是修改之后的.前面的那个就别看了.
作者: duola1119    时间: 2007-6-28 08:54
测试路径:
路径1:1-2-10
路径2:1-2-3-4-9
路径3:1-2-3-4-5-6-8
路径4:1-2-3-4-5-6-7
测试用例:
路径1的测试用例:
A.B.C其中一个边为0,或A,B,C不是直线.
预期结果:输出无法组成三角形
路径2测试用例:
A.B.C只中没有任何两条边相等.
预期结果:输出周长,返回上一次条件判断.
路径3测试用例:
其中两边相等.三边不全相等.
预期结果:输出周长,返回上一次条件判断
路径4测试用例:
A=B=C
预期结果:输出周长,显示等边三角形
作者: duola1119    时间: 2007-6-28 09:04
问题回答完毕.
作者: hadywei    时间: 2007-6-28 10:30
楼上的很强嘛,upup
作者: james.zhong    时间: 2007-7-5 16:18
顶~~好家伙!没有白混啊~~
作者: 橙子    时间: 2007-7-17 14:07
首先十分感谢duola1119 的解答...

(最近有事一段时间没上来看了)

可是流程控制图是这样的吗? 印象中好像应该还复杂一点吧... 请指教..
作者: duola1119    时间: 2007-7-17 15:19
流程控制图就是这样的.你可以找一些例子看一下.就明白了.




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2