《软件测试常见面试题十一》

1.试述软件的概念和特点?软件复用的含义?构建包括哪些?

a.软件是计算机系统中与硬件相互依存的另一部分,与计算机系统操作有关的计算机程序、规程、规则、以及可能有的文件、文档及数据

b.软件复用是将已有软件的各种有关知识用于建立新的软件,以缩减软件开发和维护的花费,软件复用是提高软件生产力和质量的一种重要技术。早起的软件服用主要是代码级复用,被服用的知识专指程序,后来扩大到包括领域知识、开发经验、设计决定、体系结构、需求、设计、代码和文档等一切有关方面。

可以被复用的软件成分一般称做可复用构件。

2.软件配置管理的作用,软件配置包括什么?

软件配置管理是一种标识、组织和控制修改的技术

软件配置管理应用于整个软件工程过程

在软件建立时变更是不可避免的,而变更加剧了项目中软件开发者之前的混乱,SCM活动的目标就是为了标识变更,控制变更、确保变更正确实现并向其他有关人员报告变更,从某种角度讲,SCM是一种标识,组织和控制修改的技术,目的是是错误降为最小并最有效的提高生产效率。

软件配置包括如下:配置项说明、工作空间管理、版本控制、变更控制、状态报告、配置审计

3.什么是软件质量?

概括的说,软件质量就是“软件与明确和隐含的定义的需求相一致的程度

具体的说,软件质量是软件符合明确叙述的功能和性能需求,文档中明确描述的开发标准,以及所有专业开发的软件都应具有的隐含特征的程度

软件质量包括正确性、健壮性、效率、完整性、可用性、风险、可理解性、可维修性、灵活性、可测试性、可移植新、可再用性、互运行性

4.目前主要的测试用例设计方法是什么?

白盒测试:逻辑覆盖(语句覆盖、盘盾构、分支覆盖、条件覆盖、条件-判定覆盖、多条件组合覆盖)、基本路径覆盖

黑盒测试:测试大纲法、场景法、等价类划分、边界值分析、错误猜测法、判定表法、随机测试、探索性测试

5.软件的安全性应从哪几个方面去测试?

1.软件安全性测试包括程序、数据库安全性测试

2.跟系统安全指标不同测试策略也不同

3.用户认证安全的测试要考虑的问题

明确区分系统中不同用户权限,系统中会不会出现用户冲突,系统会不会因为用户的权限的改变造成混乱,用户登录密码是不是可见,可复制,是否可以通过绝对途径登录系统(拷贝用户登录后的链接直接进入系统)、用户退出系统后是否删除了所有鉴权标记,是否可以使用后退键而不通过输入口令进入系统

4.系统网络安全的测试要考虑的问题

测试才去的防护措施是否正确装配好,有关系的补丁是否打上、模拟非授权共计、看防护系统是否坚固、采用成熟的网络漏洞检查工具检查系统相关漏洞,采用各种木马工具检查系统木马情况,采用各种外挂工具检查系统各组程序的外挂漏洞

5.数据库安全考虑的问题

系统数据库是否机密(比如对银行系统,这一点就特别重要,一般的网站就没有太高的要求)。系统数据的完整性,系统数据可管理性,系统数据的对立性、系统数据可备份和恢复能力(数据备份是否完整,可否恢复,恢复是否可以完整)

6.什么是测试用例,什么是测试脚本,两者的关系是什么?

测试用例是为实施测试而向被测试系统提供的输入数据、操作或各种环境设置已经期望结果的一个特定的集合

测试脚本是为了进行自动化测试而编写的脚本

测试脚本的编写一般都需要对应相应的测试用例

7.软件测试各个阶段通常完成什么工作?各个阶段的结果文件是什么,包括什么内容?

单元测试阶段:各独立单元模块与系统其它部门相隔离的情况下进行测试,单元测试针对每一个程序模块进行正确性校验,检查各个程序模块是否正确的实现了规定的功能,生成单元测试报告,提交缺陷报告。

集成测试阶段:集成测试是在单元测试的基础上,测试在将所有软件但要换按照概要设计规格说明的要求组装成模块,子系统活系统的过程中各部分工作是否达到或实现响应技术指标及要求的活动,该阶段生成集成测试报告,提交缺陷报告。

系统测试阶段:将通过确认测试的软件,作为整个给予计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际运行环境下,对计算机系统进行全面的功能覆盖,该阶段需要提交测试总结和缺陷报告。

验收测试阶段:一般由用户进行测试,或者是用户委托第三方进行测试,主要验收软件是否满足用户的使用需求,提升用户的信心,出具验收测试报告。

8.测试人员在软件开发过程中的任务是什么?

尽可能早的找出系统中的bug

避免软件开发过程中缺陷的出现

衡量软件的品质,保证系统的质量

关注用户的需求,并保证系统符合用户需求

9.如何测试一个纸杯?

功能:用水杯装水看漏不漏

安全性:杯子有没有毒或者细菌

可靠性:杯子从不同高度落下的损坏程度

可移植性:杯子在不同的地方、温度等环境下是否都可以正常使用

兼容性:杯子是否能够容纳果汁、白水、酒精、汽油等

易用性:杯子是否烫手、是否防滑、是否方便饮用

用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细的描述

疲劳测试:将杯子盛上水放24小时检查泄露时间和情况,盛上汽油放

10.测试计划的目的是什么?测试计划文档的内容应该包括什么?其中哪些是最重要的?

软件测试计划是指导测试过程中的纲领性文件:

1.领导能够根据测试计划进行宏观调控,进行相应资源配置等

2.测试人员能够了解整个项目测试情况以及项目测试不同阶段的所要进行工作等

3.便于其他人员交接测试人员的工作内容,进行有关配合工作

测试计划包含了产品的概述、测试策略、测试方法、测试区域、测试配置、测试周期、测试资源、测试交流、风险分析等内容。借助软件测试计划,参与测试的项目成员,尤其是测试管理人员,可以明确测试任务和测试方法,保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更

测试计划编写6要素

1.为什么要进行这些测试

2.测试那些方面,不同阶段的工作内容

3.测试不同阶段的起止时间

4.相应文档,缺陷的存放位置、测试环境等、

5.项目有关人员组成,安排哪些测试人员进行测试

6.如何去做,使用那些测试工具以及测试方法进行测试

测试计划和测试详细规格,测试用例质检是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、方法和资源排至,而测试详细规格,测试用例是完成测试任务的具体战术,其中最重要的是测试策略和测试方法(最好是对计划先评审)

猜你喜欢

转载自www.cnblogs.com/shmilya/p/12933332.html