求解答!!用判定表设计下面的测试用例

请问用判定法怎么做啊,脑袋快想爆了,主要是条件桩和动作桩太拿不准了,写了改,改了又写,好痛苦啊,有没有人帮忙解答解答,万分感谢

img

  • 代码运行效果截屏图片

    img


    img


    img


    img

  • python 代码

#!/sur/bin/nve python
# coding: utf-8


a, b = input(f"\n请输入A或B及数字(如A 56):\n{'':>19}").strip().split() # 接收键盘录入。

if a not in ('A', 'B'): # 判定第一列。
    print('L')

if not b.isdigit(): # 判定第二列。
    print('M')

if a in ('A', 'B') and b.isdigit(): # 输入正确,修改文件。
    with open('/sdcard/Documents/a&b_num.txt', 'a') as f:
        f.write(f"\n{a}{' '*4}{b}")
        print(f"\n{'':~^41}\n{' 输入数据已写入文件。':^31}\n{'':~^41}\n")

  • 我不懂测试,不会写。😭查过百科,还是不懂。
    判定表的建立
    第一步:
    ①判定第一列:if a not in ('A', 'B') ,字符串不是A、B,打印'L'。
    ②判定第二列:if not b.isdigit() ,第二列不是数字,打印M。
    第二步:a not in ('A', 'B') ,is 'A',is 'B'
    第三步:填入条件项
    第四步:填入动作项。制定初始判定表
    第五步:简化。合并相似规则或者相同动作

  • 代码操作的文本文件

img


不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7766513
  • 这篇博客你也可以参考下:❤️Python【文件操作】保姆式教程❤️,计算机那么多文件,你绕不过这一关的!
  • 除此之外, 这篇博客: 最全总结图论在识别人脑网络连通性模式中的应用——相关与相关性,主成分分析,聚类分析,互信息,格兰杰因果分析,动态因果模型,贝叶斯网络,转移熵中的 有效连接 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    **有效连接分析的主要目标是评估大脑网络神经元单元之间的因果相互作用。**该领域的研究有助于研究者更好地理解神经元动力学的潜在机制。

  • 您还可以看一下 刘建萍老师的人工智能系列课程零基础讲解知识点和实例应用线性回归梯度下降逻辑回归课程中的 讲解机器学中会涉及到的有关数学方面的知识储备有哪些小节, 巩固相关知识点
  • 以下回答来自chatgpt:

    使用判定表进行测试用例设计的步骤和方法如下:

    1. 确定条件和动作:首先,根据问题要求和参考资料,确定要测试的条件和对应的动作。条件是待测试的输入或状态,动作是根据条件发生的变化或操作。

    2. 创建判定表:使用表格形式创建判定表。表格的列代表条件,行代表动作。在表格中,填入所有可能的条件取值组合对应的动作。

    3. 简化判定表:如果判定表过于庞大,可以进行简化以减少重复的测试用例。通过合并相同结果的行或列,删除无关的条件或动作,或将复杂的条件简化为简单的判断等方法,简化判定表。

    4. 生成测试用例:根据简化后的判定表,通过逐行读取表格来生成相应的测试用例。每一行都代表一个具体的测试用例,其中包含对应条件的取值和期望的动作。

    5. 执行测试用例:根据生成的测试用例,对系统进行测试。按照测试用例中定义的条件值输入,执行对应的动作,并检查系统是否按照预期执行。

    以下是一个使用判定表设计测试用例的示例代码:

    # 定义条件和动作
    conditions = {
        "condition1": [True, False],
        "condition2": [True, False],
    }
    actions = {
        "action1": "Action 1",
        "action2": "Action 2",
    }
    
    # 创建判定表
    table = []
    
    # 添加列名
    headers = list(conditions.keys()) + list(actions.keys())
    table.append(headers)
    
    # 添加所有可能的条件取值组合对应的动作
    for values in itertools.product(*conditions.values()):
        row = list(values)
        for action in actions.values():
            row.append(action)
        table.append(row)
    
    # 简化判定表
    
    # 生成测试用例
    test_cases = []
    for row in table[1:]:
        test_case = {}
        for i, value in enumerate(row[:len(conditions)]):
            test_case[headers[i]] = value
        for i, action in enumerate(row[len(conditions):]):
            test_case[headers[i+len(conditions)]] = action
        test_cases.append(test_case)
    
    # 执行测试用例
    for test_case in test_cases:
        # 输入条件值
        for condition, value in test_case.items():
            # 执行对应的动作
            if condition.startswith("condition"):
                # 处理条件相关的操作
                pass
            else:
                # 处理动作相关的操作
                pass
    
        # 检查系统是否按照预期执行
        # 对应的断言语句和验证操作
    

    以上是使用判定表设计测试用例的步骤和方法。请注意,在真实的测试场景中,可能需要根据具体需求进行适当的调整和优化。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^