收藏 分销(赏)

软件测试资料.doc

上传人:仙人****88 文档编号:6247983 上传时间:2024-12-03 格式:DOC 页数:17 大小:32.01KB 下载积分:10 金币
下载 相关 举报
软件测试资料.doc_第1页
第1页 / 共17页
软件测试资料.doc_第2页
第2页 / 共17页


点击查看更多>>
资源描述
软件测试的内容 软件测试主要工作内容是验证(verification)和确认(validation ),下面分别给出其概念:   验证(verification)是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。(Do the right thing)   1.确定软件生存周期中的一个给定阶段的产品是否达到前阶段确立的需求的过程;   2.程序正确性的形式证明,即采用形式理论证明程序符号设一计规约规定的过程;   3.评市、审查、测试、检查、审计等各类活动,或对某些项处理、服务或文件等是否和规定的需求相一致进行判断和提出报告。   确认(validation)是一系列的活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性。即保证软件以正确的方式来做了这个事件(Do it right)   1.静态确认,不在计算机上实际执行程序,通过人工或程序分析来证明软件的正确性;   2.动态确认,通过执行程序做分析,测试程序的动态行为,以证实软件是否存在问题。 软件测试的对象不仅仅是程序测试,软件测试应该包括整个软件开发期问各个阶段所产生的文档,如需求规格说明、概要设计文档、详细设计文档,当然软件测试的主要对象还是源程序。 软件测试的分类 从是否关心软件内部结构和具体实现的角度划分   A.白盒测试B.黑盒测试C.灰盒测试 从是否执行程序的角度   A.静态测试B.动态测试。 从软件开发的过程按阶段划分有   A.单元测试B.集成测试C.确认测试D.验收测试E.系统测试   * 测试过程按4个步骤进行,即单元测试、集成测试、确认测试和系统测试及发版测试。   * 开始是单元测试,集中对用源代码实现的每一个程序单元进行测试,检查各个程序模块是否正确地实现了规定的功能。   * 集成测试把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。   * 确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。 * 系统测试把已经经过确认的软件纳入实际运行环境中,与其它系统成份组合在一起进行测试。 测试管理工具   AutoRunner 是国内第一款自动化测试工具,可以用来完成功能测试、回归测试、每日构建测试与自动回归测试等工作。是具有脚本语言的、提供针对脚本完善的跟踪和调试功能的、支持IE测试和Windows native测试的自动化测试工具。   TestCenter 是一款功能强大测试管理工具,它可以帮助您:实现测试用例的过程管理,对测试需求过程、测试用例设计过程、业务组件设计实现过程等整个测试过程进行管理。实现测试用例的标准化即每个测试人员都能够理解并使用标准化后的测试用例,降低了测试用例对个人的依赖;提供测试用例复用,用例和脚本能够被复用,以保护测试人员的资产;提供可伸缩的测试执行框架,提供自动测试支持;提供测试数据管理,帮助用户同意管理测试数据,降低测试数据和测试脚本之间的耦合度。   TAR(Terminal AutoRunner)适用于VT100、VT220等标准的应用系统,支持命令行模式和窗口模式(使用Cursors编写的应用程序),支持自动录制脚本、所见即所得的资源和脚本编辑,稳定的自动同步功能。是目前国内最好的银行业务测试工具.   LoadRunner 是一种预测系统行为和性能的工业标准级负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个企业架构进行测试。通过使用LoadRunner , 企业能最大限度地缩短测试时间, 优化性能和加速应用系统的发布周期。目前企业的网络应用环境都必须支持大量用户,网络体系架构中含各类应用环境且由不同供应商提供软件和硬件产品。难以预知的用户负载和愈来愈复杂的应用环境使公司时时担心会发生用户响应速度过慢, 系统崩溃等问题。这些都不可避免地导致公司收益的损失。 测试用例编写规范 1. 目的:统一测试用例编写的规范,以保证使用最有效的测试用例,保证测试质量。 2. 范围:适用于公司对产品的业务流程、功能测试测试用例的编写。 3. 术语解释 3.1 测试分析:对重要业务、重要流程进行测试前的分析。 3.2 业务流程测试用例:关于产品业务、重要流程的测试用例。 4. 业务流程测试用例编写原则   4.1 系统性 4.1.1 对于系统业务流程要能够完整说明整个系统的业务需求、系统由几个子系统组成以及它们之间的关系; 4.1.2 对于模块业务流程要能够说明清楚子系统内部功能、重要功能点以及它们之间的关系;   4.2 连贯性 4.2.1 对于系统业务流程来说,各个子系统之间是如何连接在一起,如果需要接口,各个子系统之间是否有正确的接口;如果是依靠页面链接,页面链接是否正确; 4.2.2 对于模块业务流程来说,同级模块以及上下级模块是如何构成一个子系统,其内部功能接口是否连贯; 5. 测试用例设计的方法   5.1 等价类划分法   5.1.1 确定等价类的原则 5.1.1.1 如果输入条件决定了取值范围,或值的个数,则可以确立一个有效等价类和两个无效等价类。 5.1.1.2 如果输入条件规定了输入值的集合,或者规定了“必须如何”的条件,此时可确立一个有效等价类和一个无效等价类; 5.1.1.3 如果输入条件是一个布尔量,则可以确定一个有效等价类和一个无效等价类; 5.1.1.4 如果规定了输入数据的一组值,而且程序对每个输入值分别进行处理,此时可为每一个输入值确立一个有效等价类,此外,针对这组值确立一个无效等价类,它是所有不允许输入值的集合; 5.1.1.5 如果规定了输入数据必须遵守的规则,则可以确立一个有效等价类(符合规则)和若干个无效等价类(从不同的角度违反规则)。 5.1.1.6 如果确知,已划分的等价类中各元素在程序中的处理方式不同,则应将此等价类进一步划分成更小的等价类。   5.1.2 测试用例的选择原则 5.1.2.1 为每一个等价类规定一个唯一的编号; 5.1.2.2 设计一个新的测试用例,使其尽可能多的覆盖尚未被覆盖的有效等价类,重复这一步,直至所有的有效等价类都被覆盖过; 5.1.2.3 设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直至所有的无效等价类都被覆盖为止。   5.2 边界值分析法 5.2.1 测试用例的选择原则 5.2.1.1 如果输入了条件规定了值的范围,则应取刚达到这个范围的边界值,以及刚刚超越这个边界范围的值作为测试输入数据; 5.2.1.2 如果输入条件规定了值的个数,则用最大个数、最小个数、比最大多1、比最小小1的数作为测试输入数据;5.2.1.3 根据规格说明的每个输出条件,使用前面的原则; 5.2.1.4 如果程序的规格说明给出的输入输出域是有序集合,则应选取集合的每一个元素和最后一个元素作为测试用列; 5.2.1.5 如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例; 5.2.1.6 分析规格说明,找出其他可能的边界条件。 6. 测试用例设计的原则   6.1 全面性 6.1.1 应尽可能覆盖程序的各种路径 6.1.2 应考虑存在跨年、跨月的数据 6.1.3 大量数据并发测试的准备   6.2 正确性 6.2.1 输入界面后的数据应与测试文档所记录的数据一致 6.2.2 预期结果应与测试数据发生的业务吻合   6.3 符合正常业务惯例 6.3.1 测试数据应符合用户实际工作业务流程 6.3.2 兼顾各种业务变化的可能   6.4 仿真性 人名、地名、电话号码等应具有模拟功能,符合一般的命名惯例;不允许出现与知名人士、小说中人物名等雷同情况。   6.5 可操作性 测试用例中应写清测试的操作步骤,不同的操作步骤相对应的操作结果。 7. 测试用例编写格式细则   7.1 测试用例内容 7.1.1 具体实施可以采用EXCEL和图形相结合,可用EXCEL编写测试用例的同时插入图形来加以说明。测试用例设计的内容可由:模块名、功能说明或图形说明、测试用例输入、应输出结果、实际输出结果、结论、BUG编号、BUG级别8部分组成。 7.1.2 在测试用例设计模版中有“业务流程测试用例设计模版”(包含整体业务流程)和“功能测试用例设计模版”两个模板可按需要选择。   7.2 测试用例表格格式 7.2.1 表格内容的字体为宋体; 7.2.2 表格内容的字型为12号;   8 测试用例优先级 测试用例优先级 描述 A 测试计划中重要的模块功能和业务流程 B 测试计划中比较重要的模块功能和业务流程 C 测试计划中次重要的模块功能和业务流程 D 测试计划中不重要的模块功能和业务流程 E 系统小单元、系统容错功能 对于A、B 级应重点考虑 黑盒测试(功能测试):它是通过测试来检测每个功能是否都能正常使用。在测试中,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。 黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。  黑盒测试法注重于测试软件的功能需求,主要试图发现下列几类错误。功能不正确或遗漏; 界面错误; 数据库访问错误; 性能错误; 初始化和终止错误等。 黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等。 白盒测试:也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。这一方法是把测试对象看作一个打开的盒子,测试人员依据程序内部逻辑结构相关信息,设计或选择测试用例,对程序所有逻辑路径进行测试,通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。   常用的软件测试方法有两大类:静态测试方法和动态测试方法。其中软件的静态测试不要求在计算机上实际执行所测程序,主要以一些人工的模拟技术对软件进行分析和测试;而软件的动态测试是通过输入一组预先按照一定的测试准则构造的实例数据来动态运行程序,而达到发现程序错误的过程。   白盒测试的测试方法有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、Z路径覆盖、程序变异。   白盒测试法的覆盖标准有逻辑覆盖、循环覆盖和基本路径测试。其中逻辑覆盖包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖。 六种覆盖标准:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖发现错误的能力呈由弱至强的变化。语句覆盖每条语句至少执行一次。判定覆盖每个判定的每个分支至少执行一次。条件覆盖每个判定的每个条件应取到各种可能的值。判定/条件覆盖同时满足判定覆盖条件覆盖。条件组合覆盖每个判定中各条件的每一种组合至少出现一次。路径覆盖使程序中每一条可能的路径至少执行一次。 灰盒测试:确实是介于白盒测试与黑盒测试之间的,可以这样理解,灰盒测试关注输出对于输入的正确性,同时也关注内部表现,但这种关注不象白盒那样详细、完整,只是通过一些表征性的现象、事件、标志来判断内部的运行状态,有时候输出是正确的,但内部其实已经错误了,这种情况非常多,如果每次都通过白盒测试来操作,效率会很低,因此需要采取这样的一种灰盒的方法。   灰盒测试结合了白盒测试盒黑盒测试的要素.它考虑了用户端、特定的系统知识和操作环境。它在系统组件的协同性环境中评价应用软件的设计。   灰盒测试由方法和工具组成,这些方法和工具取材于应用程序的内部知识盒与之交互的环境,能够用于黑盒测试以增强测试效率、错误发现和错误分析的效率。 单元测试(模块测试):是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。 集成测试:也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照设计要求)如根据结构图〕组装成为子系统或系统,进行集成测试。实践表明,一些模块虽然能够单独地工作,但并不能保证连接起来也能正常的工作。程序在某些局部反映不出来的问题,在全局上很可能暴露出来,影响功能的实现。 1. 一次性集成方式(big bang) * 它是一种非增殖式组装方式。也叫做整体拼装。 * 使用这种方式,首先对每个模块分别进行模块测试,然后再把所有模块组装在一起进行测试,最终得到要求的软件系统。 2. 增殖式集成方式 * 这种集成方式又称渐增式集成 * 首先对一个个模块进行模块测试,然后将这些模块逐步组装成较大的系统 * 在集成的过程中边连接边测试,以发现连接过程中产生的问题 * 通过增殖逐步组装成为要求的软件系统。   (1) 自顶向下的增殖方式 * 这种集成方式将模块按系统程序结构,沿控制层次自顶向下进行组装。 * 自顶向下的增殖方式在测试过程中较早地验证了主要的控制和判断点。 * 选用按深度方向组装的方式,可以首先实现和验证一个完整的软件功能。   (2) 自底向上的增殖方式 * 这种集成的方式是从程序模块结构的最底层的模块开始集成和测试。   * 因为模块是自底向上进行组装,对于一个给定层次的模块,它的子模块(包括子模块的所有下属模块)已经组装并测试完成,所以不再需要桩模块。在模块的测试过程中需要从子模块得到的信息可以直接运行子模块得到。* 自顶向下增殖的方式和自底向上增殖的方式各有优缺点。 * 一般来讲,一种方式的优点是另一种方式的缺点。   (3) 混合增殖式测试   * 衍变的自顶向下的增殖测试 – 首先对输入/输出模块和引入新算法模块进行测试; – 再自底向上组装成为功能相当完整且相对独立的子系统; – 然后由主模块开始自顶向下进行增殖测试。   * 自底向上-自顶向下的增殖测试 – 首先对含读操作的子系统自底向上直至根结点模块进行组装和测试; – 然后对含写操作的子系统做自顶向下的组装与测试。   * 回归测试 – 这种方式采取自顶向下的方式测试被修改的模块及其子模块; – 然后将这一部分视为子系统,再自底向上测试。 系统测试:是将已经确认的软件、计算机硬件、外设、网络等其他元素结合在一起,进行信息系统的各种组装测试和确认测试,其目的是通过与系统的需求相比较,发现所开发的系统与用户需求不符或矛盾的地方,从而提出更加完善的方案.。它的的任务是近可能彻底的检查出程序中的错误,提高软件系统的可靠性。测试人员完成。 回归测试:在有新代码加入软件的时候,除了新加入的代码中有可能含有错误外,新代码还有可能对原有的代码带来影响。因此,每当软件发生变化时,我们就必须重新测试现有的功能,以便确定修改是否达到了预期的目的,检查修改是否损害了原有的正常功能。同时,还需要补充新的测试用例来测试新的或被修改了的功能。为了验证修改的正确性及其影响就需要进行回归测试。 验收测试:相关的用户或独立测试人员根据测试计划和结果对系统进行测试和接收。它让系统用户决定是否接收系统。它是一项确定产品是否能够满足合同或用户所规定需求的测试。这是管理性和防御性控制。验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。验收测试的常用策略有三种,它们分别是: 正式验收、非正式验收或 Alpha 测试、Beta测试。α测试是指软件开发公司组织内部人员模拟各类用户行对即将面市软件产品(称为α版本)进行测试,试图发现错误并修正。α测试的关键在于尽可能逼真地模拟实际运行环境和用户对软件产品的操作并尽最大努力涵盖所有可能的 用户操作方式。经过α测试调整的软件产品称为β版本。紧随其后的β测试是指软件开发公司组织各方面的典型用户在日常工作中实际使用β版本,并要求用户报告异常情况、提出批评意见。然后软件开发公司再对β版本进行改错和完善。 一般包括功能度、安全可靠性、易用性、可扩充性、兼容性、效率、资源占用率、用户文档八个方面。 性能测试,也称作Load & Stress test即压力测试。PETE属于黑盒测试。分类:通常会包括Capacity tuning(容量测试),Stability test(稳定性测试),Overload Control test(过载测试)等。同时系统测试中一部分High Available test(可靠性测试), Robustness test(健壮性测试),Compatibility test(兼容性测试)也需要在PETE的环境下执行。   在开发流程中的位置:通常在软件工程中,PETE位于项目进度末尾,通过功能测试后进入PETE阶段,而通过PETE则已经可以交付使用。   测试流程通常会有以下几个步骤:1,规划和需求分析 2,确定Test Plan 3,拟定详细的profile 4,搭建环境 5, 使用模拟器,依据profile发起大量并发请求 6,monitor sensitive indicator 7,analyze result 8,撰写test report   重要性:PETE的重要性在于它保证了软件产品能够承受高并发高负荷的应用,并且在长时间持续变化的环境下能够稳定可靠的工作。例如在电信级产品的应用上用户就需要非常高的稳定性和可靠性,因此必须保证此类产品商用前通过严格的PETE。 压力测试:是利用测试工具对系统持续加压,直到系统不能在接收用户业务请求。压力测试主要是验证系统是否满足需求的最大负荷承受能力,并帮助找到系统性能瓶颈。如最大并发用户数、系统最大吞吐量测试等。 可用性测试:测试用户是否很容易学习和使用产品。 恢复测试:主要检查系统的容错能力。当系统出错时,能否在指定时间间隔内修正错误并重新启动系统。恢复测试首先要采用各种办法强迫系统失败,然后验证系统是否能尽快恢复。对于自动恢复需验证重新初始化(reinitialization)、检查点(checkpointing mechanisms)、数据恢复(data recovery)和重新启动 (restart)等机制的正确性;对于人工干预的恢复系统,还需估测平均修复时间,确定其是否在可接受的范围内。 安装测试:确保该软件在正常情况和异常情况的不同条件下,例如,进行首次安装、升级、完整的或自定义的安装都能进行安装。异常情况包括磁盘空间不足、缺少目录创建权限等。核实软件在安装后可立即正常运行。安装测试包括测试安装代码以及安装手册。安装手册提供如何进行安装,安装代码提供安装一些程序能够运行的基础数据。 安全测试:检查系统对非法侵入的防范能力。安全测试期间,测试人员假扮非法入侵者,采用各种办法试图突破防线。例如,①想方设法截取或破译口令;②专门定做软件破坏系统的保护机制;③故意导致系统失败,企图趁恢复之机非法进入;④试图通过浏览非保密数据,推导所需信息,等等。系统安全设计的准则是,使非法侵入的代价超过被保护信息的价值。此时非法侵入者已无利可图。 2. 什么是软件测试静态分析,软件测试动态分析? 静态方法是指不运行被测程序本身,仅通过分析或检查源程序的文法、结构、过程、接口等来检查程序的正确性。静态方法通过程序静态特性的分析,找出欠缺和可疑之处,例如不匹配的参数、不适当的循环嵌套和分支嵌套、不允许的递归、未使用过的变量、空指针的引用和可疑的计算等。静态测试结果可用于进一步的查错,并为测试用例选取提供指导。 动态方法是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率和健壮性等性能,这种方法由三部分组成:构造测试实例、执行程序、分析程序的输出结果。 7. 针对缺陷采取怎样的管理措施??? 9. 简要写出自己在理解的基础质上所认为引入测试管理的意义?? 10. 在三角形计算中,要求三角型的三个边长:A、B 和C。当三边不可能构成三角形时提示错误,?? 可构成三角形时计算三角形周长。若是等腰三角形打印“等腰三角形”,若是等边三角形,则提示“等 边三角形”。画出程序流程图、控制流程图、计算圈复杂度V(g),找出基本测试路径。 1、什么是软件测试?2’ 在规定条件下对程序进行操作,以发现错误,对软件质量进行评估,包括对软件形成过程的文档、数据以及程序进行测试。 【详解】 软件测试就是在软件投入运行前对软件需求分析、软件设计规格说明书和软件编码进行查错(包括代码执行活动与人工活动)。也可以说,软件测试是为了发现错误而执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部构造而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误,这是在软件投入前,对软件需求分析、软件设计规格说明书和软件编码的最终复审,是软件质量保障的关键步骤。 2、软件测试与软件质量保证的区别。10’ 【要点】 软件测试只是质量保证工作中的一个环节,软件质量保证与软件测试是软件质量工程的两个不同层面的工作; 质量保证:通过预防、检查与改进来保证软件质量,采用全面质量管理和过程改进的原理来开展质量保证工作,主要关注软件质量的检查与测试,主要着眼于软件开发活动的过程、步骤和产物。 软件测试:通过执行软件来,对过程中的产物(开发文档和程序)进行走查,发现问题,报告质量 【详解】 软件测试和软件质量保证是软件质量工程中的两个不同层面的工作。软件测试只是软件质量保证工作中的一个重要环节。 质量保证(QA)的工作是通过预防、检查与改进来保证软件的质量。QA采用的方法重要是按“全面质量管理”和“过程改进”的原来开展质量保证工作。虽然在软件质量保证的活动中也有一些测试活动,但它所以关注的是软件质量的检查和测量。它的主要工作是对软件生命周期的管理,以及检验软件是否满足规定的质量和用户的需求,因此重要是着眼于软件开发活动中的过程,步骤和产物,而不是软件进行剖析,找出问题或者评估。 软件测试虽然与开发过程紧密相关,但它所关心的不是过程的活动,而是对过程的产物,以及开发出的软件进行剖析。测试人员要对过程的产物(开发文档和源代码)进行走读,运行软件。以找到问题和报告质量。测试人员必须假设软件存在潜在的问题,测试中所做的操作就是为了找出更多的问题,而不是为了验证(事实上也不可能)软件的正确性。所以软件测试虽然对提高软件的质量起着关键的作用,但它只是软件质量保证的一个重要环节。 3、请描述如何划分缺陷与错误严重性和优先级别?10’ 给软件缺陷与错误划分严重性和优先级的通用原则: 表示软件缺陷所造成饿危害和恶劣程度。优先级表示修复缺陷的重要程度和次序。 严重性:(1)、严重:系统崩溃、数据丢失、数据毁坏(2)、较严重:操作性错误、结果错误、遗漏功能 (3)、一般:小问题、错别字、UI布局、罕见故障(4)、建议:不影响使用的瑕疵或更好的实现。 优先级: (1)、最高优先级:立即修复,停止进一步测试。 (2)、次高优先级:在产品发布之前必须修复。 (3)、中等优先级:如果时间允许应该修复。 (4)、最低优先级:可能会修复,但是也可能发布。 4、BUG信息应该包含那些内容。5’ 测试软件名称、测试版本号、测试人名称、测试事件、测试软件和硬件配置环境、 发现软件错误的类型、错误的严重程度、详细步骤、必要的附图、测试注释。 测试用例说明应该包含哪些内容?10’ 定义(ANSI/IEEE829):编写用于输入的实际数据和预期结果,并明确指出使用具体测试用例产生的测试程序的任何限制 包含的内容 标识符:由测试设计过程说明和测试程序说明引用的唯一标识符 测试项:描述被测试的详细特性、代码模块等 输入说明:列举执行测试用例的所有输入内容或者条件 输出说明:描述进行测试用例预期的结果 环境要求:执行测试用例的软件、硬件、测试工具及人员等要求 特殊要求:描述执行测试用例的特殊要求 用例之间的依赖性:注明与其分用例的依赖关系或受其他用例的影响 测试用例计划包含4个目标即:组织性、重复性、跟踪和测试证实。 6、WEB应用软件测试必须进行以下不同类型的测试,包括:功能测试、性能测试、可用性测试、兼容测试、安全测试等。15’ (1)、功能测试主要是用来测试WEB应用软件是否履行了预期的功能,确保每一个功能与需求说明一致。根据测试对象的不同,可分为:链接测试、表单测试、COOKIES测试、设计语言测试、数据库测试。 (2)、性能测试主要是确保WEB应用系统达到要求的性能,一般用最大的运行时间、吞吐率、相应时间描述。 性能测试又分为:链接速度测试、负载测试和压力测试, 负载测试是为了测量WEB系统在某一负载级别上的性能,以保证WEB系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问WEB系统的用户数量,也可以是在线数据处理的数量。 压力测试是指实际破坏一个WEB应用系统时测试系统的反映,压力测试是测试系统的限制和故障恢复能力,也就是测试WEB应用系统会不会崩溃,在什么情况下会崩溃,压力测试的区域包括表单、登录、和其他信息传输页面等。压力测试侧重于确定系统崩溃时的用户负载量。 (3)、可用性测试:导航测试、图形测试、内容测试、整体界面测试。 (4)、兼容性测试:确定WEB应用软件在不同软件、硬件和网络配置下运行情况,它主要是用来测试在不同浏览器中是否都可以正确地显示WEB应用程序的页面内容,从而保证页面中的某些代码,比如:JavaScript ,ActiveX 、CSS等在不同平台配置上都能具有正确性。 (5)、安全测试。 7、网络应用测试的主要内容是什么?10’ 网络应用系统包含:网络应用软件、工作站桌面软件和客户/服务器数据库。 网络应用测试重点考察:多用户并发访问性能、应用系统响应时间、应用系统对网络 资源的占用情况、与网络相关的应用功能特性、应用系统在网络环境下的稳定性。 特性测试:特性测试核实的是单个命令和应用程序功能,通常用较小的负载完成,关注的是用户界面、应用程序的操作,以及用户与计算机之间的互操作。 功能测试:要求网络配置和负载非常接近于运行环境下的模式,关注的是当多个用户使用应用程序时,网络和文件系统或者数据库系统之间的交互情况,核实的是重负载下后台功能能否正确执行。 应用应用负载测试。应用系统响应时间测试。应用系统升级测试。 8、用户文档测试的要点10’ (1)、明确读者群:根据读者群(如初级、中级、高级用户)的不同来检查文档内容, 保证用户能够看得懂、能理解 (2)、术语:文档中术语的描述要适合定位的读者群,用法一致,标准定义与业界规范相吻合 (3)、文档内容的正确性:要保证所有信息是真实正确的 (4)、文档内容的完整性:要完全根据提示逐步操作,检查是否存在遗漏的地方 (5)、文档与程序的一致性:按照文档操作后,检查软件返回的结果与文档描述是否一致 (6)、文档的易用性:检查是否便于用户查找相应的内容 (7)、图表与界面截图:检查所有图表与界面截图与发布的程序版本一致 (8)、样例和示例:检查所有的样例和示例能够正确完成; (9)、语言:中文文档保证无错别字和二义性 (10)、印刷与包装:印刷质量,包装质量 9、在DBMS中,视图不是真正的包含数据,只是把定义存于数据字典中。作用为:10’ (1)、简化用户操作。(2)、使用户能从多角度中看待同一数据。 (3)、对重构数据提供一定程度的逻辑独立性。(4)、能对机密数据提供安全保护。 10、测试人员应该具备的能力和技术。8’ 1、基本能力 2、沟通能力 3、技术能力 测试方法应用、测试用例设计、测试工具使用(测试管理系统、自动化测试工具、负载测试工具)4、管理能力 5、文档能力 判断题 1.软件测试的目的是尽可能多的找出软件的缺陷。(Y) 2.Beta 测试是验收测试的一种。(Y) 3.验收测试是由最终用户来实施的。(N) 4.项目立项前测试人员不需要提交任何工件。(Y) 5.单元测试能发现约80%的软件缺陷。(Y) 6.代码评审是检查源代码是否达到模块设计的要求。(N) 7.自底向上集成需要测试员编写驱动程序。(Y) 8.负载测试是验证要检验的系统的能力最高能达到什么程度。(N) 9.测试人员要坚持原则,缺陷未修复完坚决不予通过。(N) 10.代码评审员一般由测试员担任。(N) 11.我们可以人为的使得软件不存在配置问题。(N) 12.集成测试计划在需求分析阶段末提交。(N) 二、选折 1.软件验收测试的合格通过准则是:(ABCD) A. 软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。 B. 所有测试项没有残余一级、二级和三级错误。 C. 立项审批表、需求分析文档、设计文档和编码实现一致。 D. 验收测试工件齐全。 2.软件测试计划评审会需要哪些人员参加?(ABCD) A.项目经理 B.SQA 负责人 C.配置负责人 D.测试组 3.下列关于alpha 测试的描述中正确的是:(AD) A.alpha 测试需要用户代表参加 B.alpha 测试不需要用户代表参加 C.alpha 测试是系统测试的一种 D.alpha 测试是验收测试的一种 4.测试设计员的职责有:(BC) A.制定测试计划 B.设计测试用例 C.设计测试过程、脚本 D.评估测试活动 5.软件实施活动的进入准则是:(ABC) A.需求工件已经被基线化 B.详细设计工件已经被基线化 C.构架工件已经被基线化 D.项目阶段成果已经被基线化 三、添空 1. 软件验收测试包括:正式验收测试,alpha测试,beta测试。 2. 系统测试的策略有:功能测试,性能测试,可靠性测试,负载测试,易用性测试,强度测试,安全测试,配置测试,安装测试,卸载测试,文挡测试,故障恢复测试,界面测试,容量测试,兼容性测试,分布测试,可用性测试,(有的可以合在一起,分开写只要写出15就满分哦) 3. 设计系统测试计划需要参考的项目文挡有:软件测试计划,软件需求工件和迭代计划。 4. 对面向过程的系统采用的集成策略有:自顶向下,自底向上两种。 5. (这题出的有问题哦,详细的5步骤为~~)通过画因果图来写测试用例的步骤为: (1)分析软件规格说明描述中,哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。 (2)分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的是什么关系? 根据这些关系,画出因果图。 (3)由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号标明约束或限制条件。 (4)把因果图转换成判定表。 (5)把判定表的每一列拿出来作为依据,设计测试用例。 四、简答(资料是搜集整理的,感谢前辈的解题)无 1. 区别阶段评审的与同行评审 同行评审目的:发现小规模工作产品的错误,只要是找错误; 阶段评审目的:评审模块 阶段作品的正确性 可行性 及完整性 同行评审人数:3-7人 人员必须经过同行评审会议的培训,由SQA指导 阶段评审人数:5人左右 评审人必须是专家 具有系统评审资格 同行评审内容:内容小 一般文档 <?? 40页, 代码 < 500行 阶段评审内容: 内容多,主要看重点 同行评审时间:一小部分工作产品完成 阶段评审时间: 通常是设置在关键路径的时间点上! 2. 什么是软件测试 为了发现程序中的错误而执行程序的过程 3简述集成测试的过程 系统集成测试主要包括以下过程: 1. 构建的确认过程。2. 补丁的确认过程。3. 系统集成测试测试组提交过程。 4. 测试用例设计过程。5. 测试代码编写过程。6. Bug的报告过程。 7. 每周/每两周的构建过程。8. 点对点的测试过程。9. 组内培训过程。 4 怎么做好文档测试 仔细阅读,跟随每个步骤,检查每个图形,尝试每个示例。检查文档的编写是否满足文档编写的目的。内容是否齐全,正确。内容是否完善。标记是否正确。 5 白盒测试有几种方法 总体上分为静态方法和动态方法两大类。 静态:关键功能是检查软件的表示和描述是否一致,没有冲突或者没有歧义 动态:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖。 6系统测试计划是否需要同行审批,为什么 需要,系统测试计划属于项目阶段性关键文档,因此需要评审。 8比较负载测试,容量测试和强度测试的区别 负载测试:在一定的工作负荷下,系统的负荷及响应时间。 强度测试:在一定的负荷条件下,在较长时间跨度内的系统连续运行给系统性能所造成的影响。 容量测试:容量测试目的是通过测试预先分 析出反映软件系统应用特征的某项指标的极限值(如最大并发用户数、数据库记录数等),系统在其极限值状态下没有出现任何软件故障或还能保持主要功能正常运行。容量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。容量测试的目的是使系统承受超额的数据容量来发现它是否能够正确处理。容量测试是面向数据的,并且它的目的是显示系统可以处理目标内确定的数据容量。 9测试结束的标准是什么? 用例全部测试。覆盖率达到标准。缺陷率达到标准。其他指标达到质量标准 10描述软件测试活动的生命周期? 测试周期分为计划、设计、实现、执行、总结。其中: 计划:对整个测试周期中所有活动进行规划,估计工作量、风险,安排人力物力资源,安排进度等; 设计:完成测试方案,从技术层面上对测试进行规划; 实现:进行测试用例和测试规程设计; 执行:根据前期完成的计划、方案、用例、规程等文档,执行测试用例。 总结:记录测试结果,进行测试分析,完成测试报告。 11软件的缺陷等级应如何划分? A类—严重错误,包括以下各种错误: 1. 由于程序所引起的死机,非法退出 2. 死循环 3. 数据库发生死锁 4. 因错误操作导致的程序中断 5. 功能错误 6. 与数据库连接错误 7. 数据通讯错误 B类—较严重错误,包括以下各种错误: 1. 程序错误 2. 程序接口错误 3. 数据库的表、业务规则、缺省值未加完整性等约束条件 C类—一般性错误,包括以下各种错误: 1. 操作界面错误(包括数据窗口内列名定义、含义是否一致) 2. 打印内容、格式错误 3. 简单的输入限制未放在前台进行控制 4. 删除操作未给出提示 5. 数据库表中有过多的空字段 D类—较小错误,包括以下各种错误: 1. 界面不规范 2. 辅助说明描述不清楚 3. 输入输出不规范 4. 长操作未给用户提示 5. 提示窗口文字未采用行业术语 6. 可输入区域和只读区域没有明显的区分标志 自动化测试的基本概念 1、自动化测试的引入 为了更加快速、有效地对软件进行测试,提高软件产品的质量,我们必然会利用测试工具,也必然会引入自动化测试。 2、自动化测试的定义 自动化测试就是通过测试工具或其他手段,按照测试工程师的预定计划对软件产品进行自动的测试,它是软件测试的一个重要的组成部分,它能够完成许多手工无法完成或者难以实现的一些测试工作。正确、合理地实施自动化测试,能够快速、全面地对软件进行测试,从而提高软件质量,节省经费,缩短产品发布周期。 软件测试自动化涉及到测试流程、测试体系、自动化编译以及自动化测试等方面的整合。 自动化测试的优势与局限 1、自动化测试的优势
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服