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

等价类测试、边界值测试、决策表测试的相关例题和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日