【问题标题】:How can we decide which testing method can be used?我们如何决定可以使用哪种测试方法?
【发布时间】:2009-12-18 18:30:15
【问题描述】:

我在 .net 中有项目,我想对其进行测试。

但我对测试及其方法一无所知。

我该如何继续测试。

哪种方法更适合我开始?

有什么可以决定考虑哪种测试方法以获得更好的结果?

【问题讨论】:

  • 选择正确的测试方法在某些方面取决于您处理的项目类型,例如 GUI 应用程序、嵌入式应用程序、批处理程序、公司中少数人使用的程序用户数、要销售 10.000 次或更多次的产品、其他开发人员使用的库等等。你有什么样的项目?
  • 我有三层架构项目,关于产品商业销售业务。

标签: unit-testing testing integration-testing


【解决方案1】:

测试没有“对”或“错”之分。测试是一门艺术,您应该选择什么以及它对您的效果在很大程度上取决于项目和您的经验。

但作为一名专业的测试专家,我的建议是自动和手动测试的健康组合。

自动测试

手动测试
尽管我很喜欢自动化测试,但恕我直言,它不能替代手动测试。主要原因是自动化只能做它被告知的事情,并且只能验证它被告知的内容以视为通过/失败。人类可以利用它的智能来找出错误并提出在测试其他东西时出现的问题。

  • 探索性测试
    ET 是一种成本非常低且有效的方式来发现项目中的缺陷。它利用了人类的智慧,并且比我所知道的任何其他测试技术都教给测试人员/开发人员更多关于项目的知识。针对测试环境中部署的每个功能进行 ET 会话,不仅是快速发现问题的有效方法,也是学习和娱乐的好方法!
    http://www.satisfice.com/articles/et-article.pdf

【讨论】:

    【解决方案2】:

    由于不清楚您拥有的项目规模,您需要做的就是确保:

    1. 您的测试是值得信赖的 - 您应该知道他们说的是真话。
    2. 可重复
    3. 一致 - 如果您使用相同的测试数据重复测试,它应该提供相同的输出。
    4. 证明您涵盖了所有问题领域。

    要得到这个,你可以使用:

    1. 标准方式:NUnit、MbUnit (myFav) 或 xUnit(还没有开始使用它)或 MSTest
    2. 又快又脏:控制台应用程序(不酷,不那么灵活)

    【讨论】:

    • 哦,是的...您可以安装 TestDriven.net 插件,让您的工作更轻松
    【解决方案3】:

    如果您使用的是 .Net,我建议您查看 NUnit。这是一个很棒的测试框架。

    就学习“测试方法”而言,测试应用程序的方法有很多种。例如,当使用 NUnit 之类的工具时,您正在编写无需用户交互即可运行的自动化测试。在这些类型的测试中,您通常为应用程序中的每个公共方法编写测试,并确保在给定已知输入的情况下,这些方法会产生预期的输出。随着应用程序的更改(通过增强、错误修复等),您将拥有一组核心测试,您可以重新运行这些测试以确保不会因更改而中断。您还可以进行故障测试,以确保在给定方法的一组无效输入时,它会引发正确的异常等。

    除了使用 NUnit 等工具进行自动化测试外,确保最终用户测试产品也很重要。这里的“最终用户”可能是贵公司的质量保证小组,也可能是实际客户。关键是您需要确保有人真正使用您的应用程序,以确保它按预期工作,因为无论自动化测试有多好,仍然会有很多事情是您想不到的您的用户会发现其中的一个。处理此类测试的一种方法是编写测试场景,并让您的用户执行它们以确保场景产生正确的行为。

    我认为最好的测试方法结合了上述两者,即自动化测试和用户测试(带有记录的测试场景)。

    【讨论】:

      猜你喜欢
      • 2020-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-28
      • 1970-01-01
      • 1970-01-01
      • 2017-12-19
      • 2022-07-06
      相关资源
      最近更新 更多