黑盒测试(Black box testing) ____不考虑内部设计和代码,根据需求和功能进行测试
Xj"[*s$T0白盒测试(White box testing)──根据应用软件的代码的内部逻辑,按照代码的语句、分支、路径和条件进行测试。
!ao]Hm]0部件测试(Unit testing)——最小范围的测试,针对特定的函数和代码模块进行测试。因为需要了解程序的设计和代码的细节才能进行,所以部件测试一般是程序员。而不是由测试人员来做。除非应用软件的结构设计良好,而且代码也写得清楚,否则部件测试并非易事。也许需要开发测试驱动模块或测试工具。
L/Z3E7G#yE_0递增的综合测试(incremental integration testing)——不断进行的测试过程,每增加一个新的功能模块,都进行测试。这要求一个应用软件在最终完成之前,各功能模块要相对独立,或者已根据需要开发出测试驱动软件。这种测试可由程序员或测试人员进行。
&KA5s4A"GSKu0综合测试(integration testing)——对应用软件的各个部分进行组合测试,来检查各功能模块在一起工作是否正常,“部件“可以是代码模块、独立的应用程序、也可以是网络中的客户/服务器应用软件。这种测试特别使用客户/服务器环境和分布式系统51Testing软件测试网 R3Zo1[T.ML
功能测试(functional testing)——对一个应用软件的功能模块进行黑盒测试。这种测试应当由测试人员进行。但这并不意味着程序员在推出软件之前不进行代码检查。(这一原则适用于所有的测试阶段。)
LL0U7@
g;h&x}
e0系统测试——针对全部需求说明进行黑盒测试,包括系统中所有的部件51Testing软件测试网b6V"g2|m'j)a
端到端测试(end-to-end testing)──类似于系统测试,但测试范围更“宏观”一些。模仿实际应用环境,对整个应用软件进行使用测试。例如与数据库进行交互作业、使用网络通信、与其他硬件、应用程序和系统之间的相互作用是否满足要求。
g8NJ6C3e ?)Rh Y
D0健全测试(sanity testing)──是一种典型的初始测试。判断一个新的软件版本的运行是否正常,是否值得对它作进一步的测试。例如,如果一个新的软件每5分钟就破坏系统、大大降低系统的运行速度、或者破坏数据库,那么这样的软件就算不上是“健全”的,不值得在目前状态下进行进一步的测试。51Testing软件测试网
YD R.s7[ uA
回归测试(regression testing)──每当软件经过了整理、修改、或者其环境发生变化,都重复进行测试。很难说需要进行多少次回归测试,特别是是到了开发周期的最后阶段。进行此种测试,特别适于使用自动测试工具。51Testing软件测试网 Z%Aq.A
P2s@ImT+v
认同测试(acceptance testing)──基于说明书的、由最终用户或顾客来进行的测试。或者由最终用户/顾客来进行一段有限时间的使用。51Testing软件测试网!j9y3S$q?7[Jj
负荷试验(load testing)──在大负荷条件下对应用软件进行测试。例如测试一个网站在不同负荷情况下的状况,以确定在什么情况下系统响应速度下降或是出现故障。
Kp]$P7a5Hb#G0压力测试(stress testing)──经常可以与“负荷测试”或“性能测试”相互代替。这种测试是用来检查系统在下列条件下的情况:在非正常的巨大负荷下、某些动作和输入大量重复、输入大数、对数据库进行非常复杂的查询,等等。51Testing软件测试网NXQj;P [7W9P
51Testing软件测试网*]U*_0d3x^o C
性能测试(performance testing)──经常可以与“压力测试”或“负荷测试”相互代替。理想的“性能测试”(也包括其他任何类型的测试)都应在质量保障和测试计划的文档终予以规定。
Ii'}YX9~_Q0可用性测试(usability testing)──是专为“对用户友好”的特性进行测试。这是一种主观的感觉,取决于最终用户或顾客。可以进行用户会见、检查、对用户会议录像、或者使用其他技术。程序员和测试人员通常不参加可用性测试。51Testing软件测试网'hi!Z4FZ,NKk-l?4a
安装/卸载测试(install/uninstall testing)──对安装/卸载进行测试(包括全部、部分、升级操作)。
+vKY {%r{X0恢复测试(recovery testing)──在系统崩溃、硬件故障、或者其他灾难发生之后,重新恢复系统的情况。51Testing软件测试网N(rx oY)j3x v+O
安全测试(security testing)──测试系统在应付非授权的内部/外部访问、故意的损坏时的防护情况。这需要精密复杂的测试技术。 51Testing软件测试网6j,b i.n!k
兼容性测试(compatability testing)──测试在特殊的硬件/软件/操作系统/网络环境下的软件表现。
~N"gg`.ev(yB/_0认同测试(acceptance testing)──看顾客是否对软件满意。
s"cm3[[.VK$x0比较测试(comparison testing)──与竞争产品进行比较,以找出弱点和优势。51Testing软件测试网aVv+Rz o
V#}6XZ4@
α测试(alpha testing)──在开发一个应用软件即将完成时所进行的测试。此时还允许有较小的设计修改。通常由最终用户或其他人进行这种测试,而不是由程序员和测试人员来进行。
Yk/^3lVm.K*sK0 β测试(beta testing)──当开发和测试已基本完成,需要在正式发行之前最后寻找毛病而进行的测试。通常由最终用户或其他人进行这种测试,而不是由程序员和测试人员来进行。51Testing软件测试网*C0sQ n X