一 中级测试工程师笔试题( 二 )


测试用例 () 是为项目需求而编制的一组测试输入 ,执行条件以及预期结果. 以便测试某个程序是否满足客户需求 。这组数据可能是从用户处得来的实际的一组数据,也可能是测试人员专门设计出来的测试软件某些功能的一组数据 。
测试规程就是详细的 对 测试用例设计方法、测试方法、测试工具、测试环境和测试数据进行描述的文档,还可以包括能把某个或某一组测试用例应用到被测软件上完成某项测试的一系列的操作步骤 。
设计测试用例应当从以下的几个方面考虑 : 边界值,等价类划分,有效/无效值等
常见测试用例设计方法:等价类划分法、边界值分析法、因果图法、判定表驱动法、正交实验法、场景法、状态迁徙图法、测试大纲法,
其他测试用例设计方法:探索性测试法、猴子测试(随意性测试)
测试用例的八大要素:用例编号、测试项目、测试标题、重要级别、预置条件、测试输入、操作步骤、预期结果和实际结果
NO.13 输入三个数,判断三个数能否构成一个三角形,请设计出相应的测试用例并详细说明
三角形的等价类
有效等价类:
输入3个正数:
无效等价类:
三角形测试用例:
代码实现三角形判断:
def ispositive(num):try:float(num)except ValueError as e:print('输入内容不是数字')else:if float(num) <= 0:print('输入内容不是正数')else:return Truedef ispythagoras(a,b,c):if a**2 + b**2 == c**2 or a**2 + c**2 == b**2 or b**2 + c**2 == a**2:return Trueelse:return Falsenum1 = input("请输入第一个数:\n")while not ispositive(num1):num1 = input("您的输入不合法,请重新输入:\n")num2 = input("请输入第二个数:\n")while not ispositive(num2):num2 = input("您的输入不合法,请重新输入:\n")num3 = input("请输入第三个数:\n")while not ispositive(num3):num3 = input("您的输入不合法,请重新输入:\n")num1 = float(num1)num2 = float(num2)num3 = float(num3)if num1 + num2 > num3 and num2 + num3 > num1 and num1 + num3 > num2:if num1 == num2 == num3:print("%.2f\n%.2f\n%.2f\n可以组成等边三角形" % (num1,num2,num3))elif num1 == num2 or num2 == num3 or num1 == num3:if ispythagoras(num1,num2,num3):print('%.2f\n%.2f\n%.2f\n可以组成等腰直角三角形' % (num1,num2,num3))else:print('%.2f\n%.2f\n%.2f\n可以组成等腰三角形' % (num1,num2,num3))elif ispythagoras(num1,num2,num3):print('%.2f\n%.2f\n%.2f\n可以组成直角三角形' % (num1,num2,num3))else:print('%.2f\n%.2f\n%.2f\n可以组成普通三角形' % (num1,num2,num3))else:print('%.2f\n%.2f\n%.2f\n不能组成三角形' % (num1,num2,num3))