字号: 小 中 大 |
推荐给好友
上一篇 |
下一篇
软件测试和VSTS 软件测试工具的使用
发布: 2009-4-03 12:18 |
作者: 网络转载 |
来源:
测试时代采编 |
查看: 103次 | 进入软件测试论坛讨论
第一个要注意的问题是,所谓黑箱/白箱,是软件测试设计的方法,不是软件测试的方法!注意“设计”二字。
黑箱:在设计测试的过程中,把软件系统当作一个“黑箱”,无法了解或使用系统的内部结构及知识。一个更准确的说法是“Behavioral Test Design”, 从软件的行为,而不是内部结构出发来设计测试。
白箱:在设计测试的过程中,设计者可以“看到”软件系统的的内部结构,并且使用软件的内部知识来指导测试数据及方法的选择。“白箱”并不是一个精确的说法,因为把箱子涂成白色,同样也看不见箱子里的东西。有人建议用“玻璃箱”来表示。
在实际工作中,我们不应画地为牢,严格只用某一种方法来设计测试方法。在实际的测试中,当然是对系统了解的越多越好。所谓“灰箱”的提法,正是这一反映。有些人甚至希望我们全部忘记“箱子”和它们的颜色。
我们并不是要禁止懂得内部构造的人员来进行黑箱测试设计,只不过我们在设计时有意不考虑软件的内部结构。例如:在测试程序内部基本模块的时候(单元测试),我们通常是要求对程序结构非常了解的程序员来设计,这是因为内部模块的“行为”和程序的外部功能并没有直接的关系,而且内部基本模块的“行为”通常没有明确的定义。另一个例子是“可用性测试”,在设计此类测试的时候,我们没必要纠缠于程序的内部结构,而是着重于软件的界面和行为。但是软件可用性测试也需要很多专业知识。这也从一个侧面表明“黑箱”和 “白箱”没有简单的高低之分。
一旦测试用例写出来之后,我们大可以忘了它们是从那种颜色的箱子里出来的,用它就可以了。
以下的测试术语都是主要测试软件的功能。在下表所列的测试中,测试的范围有小到大,测试者也由内到外 – 从程序开发人员(单元测试)到 测试人员,到一般用户(Alpha/Beta 测试)。
测试名称 |
测试内容 |
|
单元测试 – 在最低的功能/参数上验证程序的正确性 |
Functional Test |
功能测试 – 验证模块的功能 |
Integration Test |
|
Scenario Test |
场景测试 – 验证几个模块是否能够完成一个用户场景 |
System Test |
|
Alpha/Beta Test |
外部软件测试人员(Alpha/Beta 测试员)在实际用户环境中对软件进行全面的测试。 |
|
|
|
|
|
|
1.3 非功能测试
一个软件除了基本功能之外,还有很多功能之外的特性,这些叫“non-functional requirement”, 或者“quality of service requirement”- 服务质量需求。没有软件的功能,这些特性都无从表现出来,我们要在软件开发的适当阶段做这些测试。
比如:
测试名称 |
测试内容 |
Stress/load test |
测试软件在负载情况下能否正常工作 |
Performance test |
测试软件的效能 |
Accessibility test |
测试软件辅助功能测试 – 测试软件是否向残疾用户提供足够的辅助功能 |
Localization/Globalization Test |
|
Compatibility Test |
|
Configuration Test |
配置测试 – 测试软件在各种配置下能否正常工作 |
Usability Test |
可用性测试 – 测试软件是否好用 |
Security Test |
|