testing - 如何提高我的回归测试速度

标签 testing

<分区>

我发现自己经常从 IDE 运行我的应用程序,测试许多更简单的更改,我发现它会拖延我的开发时间,但如果我不这样做,我害怕从以前的依赖工作中爬出来的错误。在更大的产品环境中,构建可能需要几分钟时间——每个人多久实际测试一次?您如何处理潜在的错误代码?

最佳答案

我做的几件事:

  • 防御性编码:
    • 自由使用断言来测试假设(对于生产代码始终可以关闭断言:尽管有些公司在发布代码时启用断言以更轻松地诊断问题行为 - 即使开销高达约 30%)
    • 相互怀疑:在使用之前始终验证单元的输入
    • 白名单而不是黑名单:通常更容易指定什么构成“有效”行为,而不是试图列举所有可能失败的方式。
  • 代码审查:
    • 事实证明,通过 ReviewBoard 等开源软件使用代码审查流程可以提高整体开发速度/质量。
  • 冒烟测试:简单、成本低廉的测试,用于在继续进行较长时间的测试之前检查基本假设/行为 - 这可以为您节省大量时间。
  • 单元测试:
    • 为您编写的每个代码单元包括自包含测试:代码块、函数/方法、类、包...等等
    • 一旦可以测试您编写的最小代码块,就对其进行测试 - 这将节省您的时间。
    • 利用一个测试框架自动将它们一起运行
  • 回归测试:
    • 在进行更改后测试所有内容,以确保没有任何问题。这些通常需要更长的时间才能运行,因此您可能必须在夜间构建时执行这些操作。
  • 在编写代码之前编写测试:
    • 首先编写测试可以帮助您准确了解程序应该做什么/表现什么。
    • 它可以帮助您准确地按照规范进行编码

关于testing - 如何提高我的回归测试速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13129962/

相关文章:

testing - OpenID 提供商的合规性测试

c - 是否有适用于 Windows 的免费 C 测试代码覆盖工具?

ruby-on-rails - 如何在 Rails 中使用 RSpec 测试处理错误请求?

loops - 使用 Selenium WebDriver 在一次测试中遍历多个浏览器是个好主意吗?

unit-testing - SystemVerilog 程序 block 与传统测试平台

testing - 元素内的偏移量无法滚动到 View : (0, 0): http://localhost/groupc/edit/378

android-studio - -bash : monkeyrunner: command not found

testing - 是什么阻止我使用 Ember.testing = true?

IOS App内存使用标准

python - 基于 Web 的自动化 GUI 测试工具