7.14学习内容:
测试基本概念理解: 1.什么是软件测试 2.软件开发生命周期,测试在哪个阶段介入 3.测试的流程是什么 4.测试不同阶段需要输出哪些文档,分别有哪些内容 5.测试的类型(功能测试,性能测试,安全测试…) 6.测试用例设计的方法 7.功能测试除了功能业务的正向测试,还需要关注哪些方面 8.对注册和登录功能进行测试点分析
学习总结:
1.什么是软件测试:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。 2.软件开发生命周期:1.可行性研究阶段 2.需求分析阶段 3.设计阶段(概要设计,详细设计)4.测试阶段 5.运行维护阶段;测试在所有阶段都进行介入。 3.测试的流程是什么: 1、根据软件设计需求制定测试计划,测试数据和测试用例。 2、搭建测试环境、执行测试用例。 3、提交测试报告。 4、跟踪Bug修改情况,不断测试完善产品。 5、产品的其他方面测试
4.测试不同阶段需要输出哪些文档,分别有哪些内容: 1、需求澄清: 测试主要是参加会议,这个是由产品发起的,测试不需要提交交付件 2、测试准备: 需求澄清完了,就需要测试团队进行测试前的准备工作了: 1、测试计划, 测试计划是在所有测试工作开展之前完成,主要是我们计划我们测试资源分配(硬件资源、软件资源、人力资源),测试规范制定(转测试规范、用例规范、bug规范), 测试范围的制定, 测试策略的制定, 测试时间的制定, 测试的风险预估及应对方法 2、测试用例,在执行测试前必须按要求把用例写好、评审好、修改好 3、测试环境准备不需要交付件 测试执行: 1、bug是我们的交付件, 2、测试用例执行结果是我们的交付件 测试结束: 测试报告:包括我们测试的内容、测试系统各个模块的质量,测试人力投入情况, 测试用例执行分析, bug 的分析,测试结论, 遗留问题及解决办法 从上面的分析得知:我们测试这边的交付件主要就是:测试计划、测试用例、测试报告 以及测试用例执行结果和bug 这些交付件。 5.测试的类型 1、从是否关心内部结构来看 (1)白盒测试:又称为结构测试或逻辑驱动测试,是一种按照程序内部逻辑结构和编码结构,设计测试数据并完成测试的一种测试方法。 (2)黑盒测试:又称为数据驱动测试,把测试对象当做看不见的黑盒,在完全不考虑程序内部结构和处理过程的情况下,测试者仅依据程序功能的需求规范考虑,确定测试用例和推断测试结果的正确性,它是站在使用软件或程序的角度,从输入数据与输出数据的对应关系出发进行的测试。 (3)灰盒测试:是一种综合测试法,它将“黑盒”测试与“白盒”测试结合在一起,是基于程序运行时的外部表现又结合内部逻辑结构来设计用例,执行程序并采集路径执行信息和外部用户接口结果的测试技术。
2、从是否执行代码看 (1)静态测试:指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性。 (2)动态测试:是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率、正确性和健壮性等性能指标。
3、从开发过程级别看 (1)单元测试:又称模块测试,是针对软件设计的最小单位----程序模块或功能模块,进行正确性检验的测试工作。其目的在于检验程序各模块是否存在各种差错,是否能正确地实现了其功能,满足其性能和接口要求。 (2)集成测试:又叫组装测试或联合,是单元测试的多级扩展,是在单元测试的基础上进行的一种有序测试。旨在检验软件单元之间的接口关系,以期望通过测试发现各软件单元接口之间存在的问题,最终把经过测试的单元组成符合设计要求的软件。 (3)系统测试:是为判断系统是否符合要求而对集成的软、硬件系统进行的测试活动、它是将已经集成好的软件系统,作为基于整个计算机系统的一个元素,与计算机硬件、外设、某些支持软件、人员、数据等其他系统元素结合在一起,在实际运行环境下,对计算机系统进行一系列的组装测试和确认测试。 在系统测试中,对于具体的测试类型有: (1)功能测试:对软件需求规格说明书中的功能需求逐项进行的测试,以验证功能是否满足要求。 (2)性能测试:对软件需求规格说明书的功能需求逐项进行的测试,以验证功能是否满足要求。 (3)接口测试:对软件需求规格说明中的接口需求逐项进行的测试。 (4)人机交互界面测试:对所有人机交互界面提供的操作和显示界面进行的测试,以检验是否满足用户的需求。 (5)强度测试:强制软件运行在异常乃至发生故障的情况下(设计的极限状态到超出极限),验证软件可以运行到何种程序的测试。 (6)余量测试:对软件是否达到规格说明中要求的余量的测试。 (7)安全性测试:检验软件中已存在的安全性、安全保密性措施是否有效的测试, (8)可靠性测试:在真实的或仿真的环境中,为做出软件可靠性估计而对软件进行的功能(其输入覆盖和环境覆盖一般大于普通的功能测试) (9)恢复性测试:对有恢复或重置功能的软件的每一类导致恢复或重置的情况,逐一进行的测试。 (10)边界测试:对软件处在边界或端点情况下运行状态的测试。 (11)数据处理测试:对完成专门数据处理功能所进行的测试。 (12)安装性测试:对安装过程是否符合安装规程的测试,以发现安装过程中的错误。 (13)容量测试:检验软件的能力最高能达到什么程度的测试。 (14)互操作性测试:为验证不同软件之间的互操作能力而进行的测试。 (15)敏感性测试:为发现在有效输入类中可能引起某种不稳定性或不正常处理的某些数据的组合而进行的测试。 (16)标准符合性测试:验证软件与相关国家标准或规范(如军用标准、国家标准、行业标准及国际标准)一致性的测试。 (17)兼容性测试:验证软件在规定条件下与若干个实体共同使用或实现数据格式转换时能满足有关要求能力的测试。 (18)中文本地化测试:验证软件在不降低原有能力的条件下,处理中文能力的测试。
4、从执行过程是否需要人工干预来看 (1)手工测试:就是测试人员按照事先为覆盖被测软件需求而编写的测试用例,根据测试大纲中所描述的测试步骤和方法,手工地一个一个地输 入执行,包括与被测软件进行交互(如输入测试数据、记录测试结果等),然后观察测试结果,看被测程序是否存在问题,或在执行过程中是否会有一场发生,属于比较原始但是必须执行的一个步骤。 (2)自动化测试:实际上是将大量的重复性的测试工作交给计算机去完成,通常是使用自动化测试工具来模拟手动测试步骤,执行用某种程序设计语言编写的过程(全自动测试就是指在自动测试过程中,不需要人工干预,由程序自动完成测试的全过程;半自动测试就是指在自动测试过程中,需要手动输入测试用例或选择测试路径,再由自动测试程序按照人工指定的要求完成自动测试)
5、从测试实施组织看 (1)开发测试:开发人员进行的测试 (2)用户测试:用户方进行的测试 (3)第三方测试:有别于开发人员或用户进行的测试,由专业的第三方承担的测试,目的是为了保证测试工作的客观性
6、从测试所处的环境看 (1)阿尔法测试:是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试 (2)贝塔测试:是用户公司组织各方面的典型终端用户在日常工作中实际使用贝塔版本,并要求用户报告
6.测试用例设计的方法: 等价类划分法、边界值分析法、错误推测法、判定表法、正交实验法。
7.功能测试除了功能业务的正向测试,还需要关注哪些方面: 还需要测试 性能 稳定性 安全性 等,根据你们软件的应用需要
8.对注册和登录功能进行测试点分析: 注册: 登录:
|