gpt4 book ai didi

language-agnostic - 测试用例 "when"、 "what"和 "why"?

转载 作者:行者123 更新时间:2023-12-01 19:40:22 24 4
gpt4 key购买 nike

作为基于测试的开发的新手,这个问题一直困扰着我。多少是太多了?应该测试什么,应该如何测试,为什么应该测试?给出的示例是使用 NUnit 的 C# 语言,但我认为问题本身与语言无关。

这是我自己的两个当前示例,对通用列表对象进行测试(使用字符串进行测试,初始化函数添加三个项目{"Foo", "Bar", "Baz"} ):

[Test]
public void CountChanging()
{
Assert.That(_list.Count, Is.EqualTo(3));
_list.Add("Qux");
Assert.That(_list.Count, Is.EqualTo(4));
_list[7] = "Quuuux";
Assert.That(_list.Count, Is.EqualTo(8));
_list.Remove("Quuuux");
Assert.That(_list.Count, Is.EqualTo(7));
}

[Test]
public void ContainsItem()
{
Assert.That(_list.Contains("Qux"), Is.EqualTo(false));
_list.Add("Qux");
Assert.That(_list.Contains("Qux"), Is.EqualTo(true));
_list.Remove("Qux");
Assert.That(_list.Contains("Qux"), Is.EqualTo(false));
}

代码是相当 self 注释的,所以我不会详细说明正在发生的事情,但是这种事情是否太过分了?当然,Add()Remove() 是单独测试的,那么我应该对这些类型的测试进行到什么级别呢?我应该进行这些类型的测试吗?

最佳答案

我想说的是,您实际测试的是等价类。在我看来,添加到包含 3 个项目或 7 个项目的列表中没有区别。但是,0 个项目、1 个项目和 >1 个项目之间存在差异。我最初可能会对这些情况的添加/删除方法分别进行 3 次测试。

一旦 QA/用户开始出现错误,我会将每个此类错误报告添加为测试用例;通过获得红色条来查看错误的重现;通过获得绿色条来修复错误。每个这样的“错误检测”测试都会保留 - 这是我的安全网(阅读:回归测试),即使我再次犯这个错误,我也会得到即时反馈。

关于language-agnostic - 测试用例 "when"、 "what"和 "why"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/169877/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com