lingzixi 2023-03-19 20:47 采纳率: 78.6%
浏览 14
已结题

等价类测试、边界值测试、决策表测试的相关例题和python编程代码

最近刚接触软件测试,有什么与黑盒测试想关的以上三种测试编程例子吗

  • 写回答

2条回答 默认 最新

  • 追cium 2023-03-19 20:55
    关注

    参考GPT和自己的思路:

    好的,我可以为您提供一些关于等价类测试、边界值测试和决策表测试的例子和Python编程代码。以下是示例代码:

    1. 等价类测试示例代码:
    def get_grade(score):
        if score < 0 or score > 100:
            return "Invalid score"
        elif score >= 90:
            return "A"
        elif score >= 80:
            return "B"
        elif score >= 70:
            return "C"
        elif score >= 60:
            return "D"
        else:
            return "F"
    
    # Equivalent class partitioning test cases
    assert get_grade(-1) == "Invalid score"
    assert get_grade(101) == "Invalid score"
    assert get_grade(90) == "A"
    assert get_grade(85) == "B"
    assert get_grade(75) == "C"
    assert get_grade(65) == "D"
    assert get_grade(55) == "F"
    
    1. 边界值测试示例代码:
    def get_discount(price):
        if price < 0:
            return "Invalid price"
        elif price < 100:
            return 0
        elif price < 500:
            return 10
        elif price < 1000:
            return 20
        else:
            return 30
    
    # Boundary value test cases
    assert get_discount(0) == "Invalid price"
    assert get_discount(99) == 0
    assert get_discount(100) == 10
    assert get_discount(499) == 10
    assert get_discount(500) == 20
    assert get_discount(999) == 20
    assert get_discount(1000) == 30
    assert get_discount(2000) == 30
    
    1. 决策表测试示例代码:
    def calculate_tax(income, is_married, has_children):
        if income < 0:
            return "Invalid income"
    
        tax_rate = 0
        if income <= 10000:
            tax_rate = 0.1
        elif income <= 50000:
            tax_rate = 0.2
        else:
            tax_rate = 0.3
    
        if is_married:
            tax_rate -= 0.1
    
        if has_children:
            tax_rate -= 0.05
    
        tax = income * tax_rate
        return tax
    
    # Decision table test cases
    assert calculate_tax(5000, False, False) == 500
    assert calculate_tax(15000, True, False) == 2250
    assert calculate_tax(40000, False, True) == 8400
    assert calculate_tax(-1, False, False) == "Invalid income"
    

    希望这些示例代码可以帮助您更好地了解等价类、边界值和决策表测试的应用。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月11日
  • 已采纳回答 4月3日
  • 创建了问题 3月19日

悬赏问题

  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么