回归测试是整个测试套件还是测试样本? [英] Are regression tests the entire test suite or a sample of tests?

查看:268
本文介绍了回归测试是整个测试套件还是测试样本?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我被告知,回归测试只是整体测试的一个小样本(仅足以证明您没有因引入变更或新模块而破坏任何东西).但是,Ron Morrison和Grady Booch的这篇文章使我有不同的看法:

I was taught that a regression test was a small (only enough to prove you didn't break anything with the introduction of a change or new modules) sample of the overall tests. However, this article by Ron Morrison and Grady Booch makes me think differently:

理想的策略是将每个单元一次组合起来,进行广泛的回归测试,纠正任何缺陷,然后继续进行下一个单元.

The desired strategy would be to bring each unit in one at a time, perform an extensive regression test, correct any defects and then proceed to the next unit.

同一文档还说:

一旦添加少量单元,就会生成测试版本并进行烟熏测试",其中将进行少量测试,以确保集成产品将按预期运行.目的既不是对新单元进行彻底测试,也不是对整个系统进行完全回归测试.

As soon as a small number of units are added, a test version is generated and "smoke tested," wherein a small number of tests are run to gain confidence that the integrated product will function as expected. The intent is neither to thoroughly test the new unit(s) nor to completely regression test the overall system.

在描述烟雾测试时,作者说:

When describing smoke testing, the authors say this:

烟雾测试不仅要检查新组件,还要对整个系统进行快速检查,这一点也很重要.

It is also important that the Smoke Test perform a quick check of the entire system, not just the new component(s).

我从未见过将广泛的"和回归测试"结合使用,也从未见过被描述为对整个系统进行完全回归测试"的回归测试.回归测试应该尽可能轻便,快速.烟雾测试的定义就是我所了解的回归测试.

I've never seen "extensive" and "regression test" used together nor a regression test described as "completely regression test the overall system". Regression tests are supposed to be as light and quick as possible. And the definition of smoke test is what I learned a regression test was.

我是否误解了我所教的内容?我的授课不正确吗?还是对回归检验"有多种解释?

Did I misunderstand what I was taught? Was I taught incorrectly? Or are there multiple interpretations of "regression test"?

推荐答案

有多种解释.如果您只修复影响系统一小部分的错误,则回归测试可能仅包括一小套测试该类或程序包的测试.如果要修复错误或添加范围更广的功能,则回归测试的范围也应更广.

There are multiple interpretations. If you're only fixing a bug that affects one small part of your system then regression tests might only include a small suite of tests that exercise the class or package in question. If you're fixing a bug or adding a feature that has wider scope then your regression tests should have wider scope as well.

在这里适用如果可能破裂,请进行测试"的经验法则.如果Foo的更改可能影响Bar,请对两者进行回归.

The "if it could possibly break, test it" rule of thumb applies here. If a change in Foo could affect Bar, then run the regressions for both.

回归测试仅检查是否有更改导致先前通过的测试失败.它们可以在任何级别(单元,集成,系统)上运行. 参考.

Regression tests just check to see if a change caused a previously passed test to fail. They can be run at any level (unit, integration, system). Reference.

这篇关于回归测试是整个测试套件还是测试样本?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆