【问题标题】:how to find multiple testcases are pass or failed in unit testing?如何在单元测试中找到多个测试用例通过或失败?
【发布时间】:2013-07-29 14:05:53
【问题描述】:

如果我们在使用 Visual Studio 2010 的单元测试中在单个 TestMethod() 中运行多个测试用例时,如何找到测试用例通过或失败。我需要找出哪个通过,哪个失败。 例如:在 XML 中,我有 2 个测试用例,例如

<Testcases>
  <Test id="1">
      <Employee>A</Employee>
      <Country>B</Country>
  </Test>
</Testcases>
<Testcases>
  <Test id="2">
      <Employee>C</Employee>
      <Country>D</Country>
  </Test>
</Testcases> 

【问题讨论】:

    标签: c# visual-studio-2010 unit-testing tdd


    【解决方案1】:

    您不应该在一个方法中混合测试用例。每个测试用例都应该有自己的方法。这样每个测试用例都有一个清晰的名称,您的代码更容易找到、阅读和理解。

    【讨论】:

    • 在我的 xml 中,我有 2 个测试用例,在这种情况下输入数据类型相同。所以我不能为每个测试用例编写不同的方法。这可能是最好的解决方案
    • 创建多个测试方法并将重复的逻辑提取到辅助方法中。
    • 很好的答案史蒂文 :)
    【解决方案2】:

    史蒂文是对的,但并非总是有可能这样做,例如,如果老板告诉你这样做,而不是问你的想法。在这些情况下,测试用例应该返回一个数字,表明他在什么情况下失败了

    【讨论】:

    • 如果你的老板正在管理你添加这个级别的细节,他们是一些严重的信任问题,或者他不适合担任老板的工作。但无论如何,无论你的老板怎么说,这都不是好的做法。
    • 我同意,@Steven,但并非总是我会得到好老板...无论如何 +1 以获得出色的答案
    • 如果你的老板那么坏,你可能想换工作。与臭老板一起工作没有乐趣。
    • @Steven 并不总是一个选择 :) 有时留下来就足够了
    • 我很好,但不要用“老板告诉我”作为做错事的理由。坚持你的职业。你知道什么是最好的。为了你和你的老板。此外,您可以使用“如果您的老板告诉您”来回答有关 stackoverflow 的所有问题,但这对任何人都没有帮助。
    【解决方案3】:

    是的,同意 stevern .. 每个单元测试用例方法应该只有一个用例来测试 ...
    考虑一个简单的方法来测试任何 int 是正还是负

    那么测试用例应该有不同的名称,用于测试的正值、负值和零值...... 因此,仅从名称我们就可以确定天气测试用例是通过还是失败

    这是一个单一的责任,一种方法或一个实体应该只有一个理由来改变相同的......

    【讨论】:

      猜你喜欢
      • 2017-08-15
      • 2023-03-29
      • 2012-02-28
      • 1970-01-01
      • 2015-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多