1. Unit testing (单元测试):指一段代码的基本测试,其实际大小是未定的,通常是一个函数或子程序,一般由开发者执行。
2. Integration testing (集成测试):被测试系统的所有组件都集成在一起,找出被测试系统组件之间关系和接口中的错误。该测试一般在单元测试之后进行。
3. Acceptance testing (验收测试):系统开发生命周期方法论的一个阶段,这时相关的用户和(或)独立测试人员根据测试计划和结果对系统进行测试和接收。它让系统用户决定是否接收系统。它是一项确定产品是否能够满足合同或用户所规定需求的测试。这是管理性和防御性控制。
4. Alpha testing (A测试):是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试,Alpha测试不能由程序员和测试员完成。Alpha测试可以从软件产品编码结束之后开始,或在模块(子系统)测试完成后开始,也可以在确认测试过程中产品达到一定的稳定和可靠程度之后再开始。有关的手册(草稿)等应该在Alpha测试前准备好。
5. Beta testing : 是软件的多个用户在一个或多个用户的实际使用环境下进行的测试,开发者通常不在测试现场,Beta测试也不能由程序员或测试员完成。因而,Beta测试是在开发者无法受控的环境下进行的软件现场应用。Beta测试着重于产品的支持性,只有当Alpha测试达到一定的可靠程度后才能开始Beta测试。
6. Black box testing (黑盒测试): 指测试人员不关心程序具体如何实现的一种测试方法。根据软件的规格对软件进行各种输入和观察软件的各种输出结果来发现软件的缺陷的测试,这类测试不考虑软件内部的运作原理,因此软件对用户来说就像一个黑盒子。
7. White box testing (白盒测试): 根据软件内部的工作原理分析来进行测试,基于代码的测试,测试人员通过阅读程序代码或者通过使用开发工具中的单步调试来判断软件的质量,一般白盒测试由项目经理在程序开发中来实现。
8. Automated testing (自动化测试): 使用自动化测试工具来进行测试,这类测试一般不需要人干预,通常在GUI、性能等测试中用得较多。
9. Bug tracking system (错误跟踪系统,BTS): 也称为“Defect tracking system,DTS”,管理软件测试缺陷的专用数据库系统,可以高效率地完成软件缺陷的报告、验证、修改、查询、统计、存储等任务。尤其适用于大型多语言软件的测试管理。
10. Build(工作版本):软件开发过程中用户内部测试的功能和性能等不完善的软件版本。工作版本既可以是系统的可操作版本,也可以是展示要在最终产品中提供的部分功能的部分系统。
11. Functional testing (功能测试): 也称Behavioral testing(行为测试),根据产品特征、操作描述和用户方案,测试一个产品的特性和可操作行为以确定它们满足设计需求。本地化软件的功能测试,用于验证应用程序或网站对目标用户能正确工作。使用适当的平台、浏览器和测试脚本,以保证目标用户的体验将足够好,就像应用程序是专门为该市场开发的一样。
12. Load testing (负载测试): 通过测试系统在资源超负荷情况下的表现,以发现设计上的错误或验证系统的负载能力。在这种测试中,将使测试对象承担不同的工作量,以评测和评估测试对象在不同工作量条件下的性能行为,以及持续正常运行的能力。Load testing的目标是确定下并确保系统在超出最大预期工作量的情况下仍能正常运行。此外,Load testing还要评估性能特征,例如:响应时间、事务处理速率和其它与时间相关的方面。
13. Performance testing (性能测试): 评价一个产品或组件与性能需求是否符合的测试。包括负载测试、强度测试、数据库容量测试、基准测试等类型。
14. Pilot testing (引导测试): 软件开发中,验证系统在真实硬件和客户基础上处理典型操作的能力。在软件外包测试中,引导测试通常是客户检查软件测试公司测试能力的一种形式,是有通过了客房特定的引导测试,软件测试公司才能接受客户真实软件项目的软件测试。
15. Portability testing (或移植性测试): 测试软件是否可以被成功移植到指定的硬件或软件平台上。
16. Compatibility Testing (兼容性测试): 也称“Configuration testing (配置测试)”,测试软件是否和系统的其它与之交互的元素之间兼容,如:浏览器、操作系统、硬件等。验证测试对象在不同的软件和硬件配置中的运行情况。
17. Installing Testing (安装测试): 确保该软件在正常情况和异常情况的不同条件下,例如,进行首次安装、升级、完整的或自定义的安装都能进行安装。异常情况包括磁盘空间不足、缺少目录创建权限等。核实软件在安装后可立即正常运行。Installing Testing包括测试安装代码以及安装手册。安装手册提供如何进行安装,安装代码提供 安装一些程序能够运行的基础数据。
18. Smoke Testing (冒烟测试): 冒烟测试的对象是每一个新编译的需要正式测试的软件版本,目的是确认软件基本功能正常,可以进行后续的正式测试工作。冒烟测试的执行者是版本编译人员。参考"Sanity Testing (健全测试)"
19. SanityTesting (健全测试): 软件主要功能成分的简单测试以保证它是否能进行基本的测试。
20. Regression Testing (回归测试): 在发生修改之后重新测试先前的测试以保证修改的正确性。理论上,对软件的任何新版本,都需要进行回归测试,验证以前发现和修复的错误 是否在新软件版本上再现。
21. Priority (优先权): 从商业角度出发是指错误的重要性,尤其是从客户和用户的角度出发,是指错误对于系统的可行性和可接受性的影响。与“Severity (严重性)”相对照。
22. Severity (严重性): 错误对被测系统的影响程度,在终端用户条件下发生的可能性,软件错误妨碍系统使用的程度。
23. Software life cycle (软件生命周期): 开始于一个软件产品的构思,结束于该产品不再被使用的这段期间。
24.SRS(软件需求规格说明书):Software Requirement Specification
提问:
1.UAT与SIT的区别
UAT(User Acceptance Testing):终端用户集成测试,主要是要求用户参与进测试流程,并得到用户对软件的认可,鼓励用户自己进行测试设计和进行破坏性测试,充分暴露系统的设计和功能问题,显然,用户的认可和破坏性测试是难点。因为测试人员并不了解用户用什么样的手段和思维模式进行测试;UAT有点类似用户体验
SIT(System Integration Testing) :系统集成测试,和软件一般的模块集成测试差不多,但用户参与的机会很少,主要由公司内部进行;
【2023最新】Python自动化测试,7天练完60个实战项目,全程干货。【自动化测试/接口测试/性能测试/软件测试】
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!