msv*_*cyc 4 testing qa software-quality release-management
我理解简短的答案是通过测试,但你仍然如何进行测试?您是否修改了测试用例以将错误包含在运行的其他测试用例中,或者您只是验证错误跟踪系统中从最旧版本到最新版本的所有错误.
谢谢你的回答.看起来我的问题不明确.我知道我们需要编写错误报告,修复错误并进行修复验证测试.但是,在下一个版本发布期间,测试阶段应该在下一个版本发布期间,我们确保再次重新运行测试以确保没有新的更改重新引入该错误.它是应该进行回归测试还是应该针对该特定项目进行集成测试,还是应该从1.0版开始测试bug跟踪系统中的所有错误?
你是什么意思说"你被保护不会退回它,因为那个测试会突然失败."?
"单元测试"的意思是它们将作为编译/检查周期的一部分自动运行:您将在编译之后和检查代码之前运行测试.如果单元测试失败,那么您知道某些代码你刚写的将重新创建旧的bug.
编辑:
你怎么能这么肯定,因为你的单元测试通过所有你的错误已经修复.
通常,如果您可以重现错误,则可以进行测试以在代码中复制它.最重要的部分是,一旦你编写了一个测试来检查bug的存在,然后如果你运行测试,并且测试失败,那么你重新引入了bug.关于这个主题的一本好书是"有效地使用遗留代码"
单个错误是否不可能跨越多个单元测试.
当然它可以跨越多个测试.
让我们假设这个bug是"无法保存文件".
我们假设有几种不同的情况可能导致这种情况:
磁盘空间不足,
您正在写的文件被另一个进程打开并锁定,
有权限问题(比如你无法访问目录,或者没有写权限),
或者在保存文件时出现网络错误.
理想情况下,您的测试工具(测试集合)将针对每个测试工具进行单独测试.对于某些测试,您可能需要使用被称为"模拟对象"的东西(当您还没有为组件编写代码时也可以使用它们).