1、什么是兼容性测试?兼容性测试侧重哪些方面?
兼容测试:主要是检查软件在不同的软\\硬件平台上是否可以正常的运行,即软件可移植性。 兼容的类型:细分为平台的兼容,网络兼容,数据库兼容,以及数据格式的兼容。
兼容测试的重点:对兼容环境的分析。通常,是在运行软件的环境不是很确定的情况下,才需要做兼容测试。 兼容和配置测试的区别:做配置测试通常不是Clean OS下做测试,而兼容测试多是在Clean OS的环境下做的。
2、我现在有个程序,发现在Windows上运行得很慢,怎么判别是程序存在问题还是软硬件系统存在问题? 1、检查系统是否有中毒的特征;
2、检查软件/硬件的配置是否符合软件的推荐标准;
3、确认当前的系统是否是独立,即没有对外提供什么消耗CPU资源的服务;
4、如果是C/S或者B/S结构的软件,需要检查是不是因为与服务器的连接有问题,或者访问有问题造成的; 5、在系统没有任何负载的情况下,查看性能监视器,确认应用程序对CPU/内存的访问情况。 3、测试的策略有哪些?
黑盒/白盒,静态/动态,手工/自动,冒烟测试,回归测试,公测(Beta测试的策略) 4、正交表测试用例设计方法的特点是什么?
1、用最少的实验覆盖最多的操作,测试用例设计很少,效率高,但是很复杂;
2、对于基本的验证功能,以及二次集成引起的缺陷,一般都能找出来;但是更深的缺陷,更复杂的缺陷,还是无能为力的;
3、具体的环境下,正交表一般都很难做的。大多数,只在系统测试的时候使用此方法。 5、描述使用bugzilla缺陷管理工具对软件缺陷(BUG)跟踪的管理的流程?标记
就是Bugzilla的状态转换图。
6、你觉得bugzilla在使用的过程中,有什么问题?标记
界面不稳定;
根据需要配置它的不同的部分,过程很烦琐。
流程控制上,安全性不好界定,很容易对他人的Bug进行误操作; 没有综合的评分指标,不好确认修复的优先级别。 7、描述测试用例设计的完整过程? 需求分析 + 需求变更的维护工作; 根据需求, 得出测试需求; 设计测试方案,评审测试方案;
方案评审通过后,设计测试用例,再对测试用例进行评审; 8、单元测试的策略有哪些?
逻辑覆盖、循环覆盖、同行评审、桌前检查、代码走查、代码评审、景泰数据流分析 9、LoadRunner分哪三部分?标记
用户动作设计; 场景设计;
测试数据分析;
10、LoadRunner进行测试的流程? 标记
1、 测试用例
2、 创建虚拟用户脚本 3、 创建运行场景 4、 运行测试脚本 5、 监视场景
6、 分析测试的结果
以上,最好是结合一个案例,根据以上流程来介绍。
11、什么是并发?在lordrunner中,如何进行并发的测试?集合点失败了会怎么样?标记
在同一时间点,支持多个不同的操作。
LoadRunner中提供IP伪装,集合点,配合虚拟用户的设计,以及在多台电脑上设置,可以比较好的模拟真实的并发。
1
集合点,即是多个用户在某个时刻,某个特定的环境下同时进行虚拟用户的操作的。集合点失败,则集合点的才操作就会取消,测试就不能进行。
12、使用QTP做功能测试,录制脚本的时候,要验证多个用户的登录情况/查询情况,如何操作?标记
分析用户登录的基本情况,得出一组数据,通过性测试/失败性测试的都有(根据TC来设计这些数据),然后录制登录的脚本,将关键的数据参数化,修改脚本,对代码进行加强,调试脚本。 13、QTP中的Action有什么作用?有几种?标记
Action的作用
? 用Action可以对步骤集进行分组 ? 步骤重组,然后被整体调用 ? 拥有自己的sheet
? 组合有相同需求的步骤,整体操作 ? 具有独立的对象仓库
Action的种类
? 可复用Action ? 不可复用Action ? 外部Action
14、TestDirector有些什么功能,如何对软件测试过程进行管理?标记
需求管理
? 定义测试范围 ? 定义需求树
? 描述需求树的功能点
测试计划
? 定义测试目标和测试策略。
? 分解应用程序,建立测试计划树。 ? 确定每个功能点的测试方法。
? 将每个功能点连接到需求上,使测试计划覆盖全部的测试需求。 ? 描述手工测试的测试步骤
? 指明需要进行自动测试的功能点
测试执行
? 定义测试集合。
? 为每个测试人员制定测试任务和测试日程安排。 ? 运行自动测试。
缺陷跟踪
? 记录缺陷
? 查看新增缺陷,并确定哪些是需要修正的 ? 相关技术人员修改缺陷 ? 回归测试
? 分析缺陷统计图表,分析应用程序的开发质量。
15、你所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性能测试??)?
Compatibility Testing(兼容性测试),测试软件是否和系统的其它与之交互的元素之间兼容,如:浏览器、操作系统、硬件等。验证测试对象在不同的软件和硬件配置中的运行情况。
Functional testing (功能测试),根据产品特征、操作描述和用户方案,测试一个产品的特性和可操作行为以确定它们满足设计需求。
Performance testing(性能测试),评价一个产品或组件与性能需求是否符合的测试。包括负载测试、强度测试、数据库容量测试、基准测试等类型。
16、软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量的软件缺陷(Bug)记录? 1,硬件平台和操作系统
2
2,版本 3,bug编号 4,bug报告优先级 5,bug状态 6,发现人 7,提交人 8,提交日期 9,指定处理人 10,概述 11,从属关系 12,详细描述 13,严重程度 14,所属模块
要提交高质量的软件缺陷记录要参考需求及前期详细设计等前期文档,设计高效测试用例,然后执行用例,对发现问题要充分肯定,然后对外发布。 17、Beta测试与Alpha测试有什么区别?
Beta testing(β测试),测试是软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者通常不在测试现场
Alpha testing (α测试),是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试
18、软件的评审一般由哪些人参加?其目的是什么?标记
在正式的会议上将软件项目的成果(包括各阶段的文档、产生的代码等)提交给用户、客户或有关部门人员对软件产品进行评审和批准。其目的是找出可能影响软件产品质量、开发过程、维护工作的适用性和环境方面的设计缺陷,并采取补救措施,以及找出在性能、安全性和经济方面的可能的改进。
人员:用户、客户或有关部门开发人员,测试人员,需求分析师都可以,就看处于评审那个阶段 19、阶段评审与项目评审有什么区别?标记
阶段评审 对项目各阶段评审:对阶段成果和工作 项目评审 对项目总体评审:对工作和产品 20、阐述工作版本的定义?
软件开发过程中,用于内部测试的功能和性能不完善的软件版本。工作版本既可以是系统的可操作版本,也可以是要在发布产品中演示的部分功能模块。 21、什么是桩模块?什么是驱动模块? 桩模块:被测模块调用模块 驱动模块 调用被测模块的模块 22、什么是扇入?什么是扇出? 扇入:被调次数,扇出:调其它模块数目
23、你认为做好测试计划工作的关键是什么?标记
3
软件测试计划就是在软件测试工作正式实施之前明确测试的对象,并且通过对资源、时间、风险、测试范围和预算等方面的综合分析和规划,保证有效的实施软件测试; 做好测试计划工作的关键 :目的,管理,规范 1. 明确测试的目标,增强测试计划的实用性
编写软件测试计划得重要目的就是使测试过程能够发现更多的软件缺陷,因此软件测试计划的价值取决于它对帮助管理测试项目,并且找出软件潜在的缺陷。因此,软件测试计划中的测试范围必须高度覆盖功能需求,测试方法必须切实可行,测试工具并且具有较高的实用性,便于使用,生成的测试结果直观、准确 2.坚持“5W”规则,明确内容与过程
“5W”规则指的是“What(做什么)”、“Why(为什么做)”、“When(何时做)”、“Where(在哪里)”、“How(如何做)”。利用“5W”规则创建软件测试计划,可以帮助测试团队理解测试的目的(Why),明确测试的范围和内容(What),确定测试的开始和结束日期(When),指出测试的方法和工具(How),给出测试文档和软件的存放位置(Where)。
3.采用评审和更新机制,保证测试计划满足实际需求
测试计划写作完成后,如果没有经过评审,直接发送给测试团队,测试计划内容的可能不准确或遗漏测试内容,或者软件需求变更引起测试范围的增减,而测试计划的内容没有及时更新,误导测试执行人员。 4. 分别创建测试计划与测试详细规格、测试用例
应把详细的测试技术指标包含到独立创建的测试详细规格文档,把用于指导测试小组执行测试过程的测试用例放到独立创建的测试用例文档或测试用例管理数据库中。测试计划和测试详细规格、测试用例之间是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、方法和资源配置,而测试详细规格、测试用例是完成测试任务的具体战术。
24、你认为做好测试用例工作的关键是什么?
需求和设计文档的理解程度,对系统的熟悉程度 25、简述一下缺陷的生命周期?
提交->确认->分配->修复->验证->关闭 26、软件的安全性应从哪几个方面去测试?
用户认证机制:如数字证书、智能卡、双重认证、安全电子交易协议 加密机制
安全防护策略:如安全日志、入侵检测、隔离防护、漏洞扫描 数据备份与恢复手段:存储设备、存储优化、存储保护、存储管理 防病毒系统
27、软件配置管理工作开展的情况和认识?标记
软件配置管理贯穿于软件开发、测试活动的始终,覆盖了开发、测试活动的各个环节,它的重要作用之一就是要全面的管理保存各个配置项,监控各配置项的状态,并向项目经理及相关的人员报告,从而实现对软件过程的控制。
软件测试配置管理包括4个最基本的活动:
配置项标识 配置项控制
配置项状态报告 配置审计
4
软件配置管理通常借助工具来辅助,主要有MS SourceSafe、Rational ClearCase等 28、你觉得软件测试通过的标准应该是什么样的?
缺陷密度值达到客户的要求 29、引入测试管理的含义?标记
风险分析,进度控制、角色分配、质量控制 30、一套完整的测试应该由哪些阶段组成?
需求分析→测试计划→测试设计→测试环境搭建→测试执行→测试记录→缺陷管理→软件评估 31、集成测试也叫组装测试或者联合测试,请简述集成测试的主要内容?
(1)在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失; (2)一个模块的功能是否会对另一个模块的功能产生不利的影响; (3)各个子功能组合起来,能否达到预期要求的父功能; (4)全局数据结构是否有问题;
(5)单个模块的误差累积起来,是否会放大,从而达到不能接受的程度。 32、简述集成测试与系统测试关系?
(1)集成测试的主要依据概要设计说明书,系统测试的主要依据是需求设计说明书;
(2)集成测试是系统模块的测试,系统测试是对整个系统的测试,包括相关的软硬件平台、网络以及相关外设的测试。
33、软件测试的文档测试应当贯穿于软件生命周期的全过程,其中用户文档是文档测试的重点。那么软件系统的用户文档包括哪些?
用户手册
安装和设置指导 联机帮助 指南、向导
样例、示例和模板 授权/注册登记表 最终用户许可协议
34、软件系统中除用户文档之外,文档测试还应该关注哪些文档?
开发文档
软件需求说明书
数据库设计说明书 概要设计说明书 详细设计说明书 可行性研究报告 管理文档
项目开发计划 测试计划 测试报告 开发进度月报 开发总结报告
35、简述软件系统中用户文档的测试要点?
(1)读者群。文档面向的读者定位要明确。对于初级用户、中级用户以及高级用户应该有不同的定位 (2)术语。文档中用到的术语要适用与定位的读者群,用法一致,标准定义与业界规范相吻合。 (3)正确性。测试中需检查所有信息是否真实正确,查找由于过期产品说明书和销售人员夸大事实而导致的错误。检查所有的目录、索引和章节引用是否已更新,尝试链接是否准确,产品支持电话、地址和邮政编码是否正确。
(4)完整性。对照软件界面检查是否有重要的分支没有描述到,甚至是否有整个大模块没有描述到。 (5)一致性。按照文档描述的操作执行后,检查软件返回的结果是否与文档描述的相同。
(6)易用性。对关键步骤以粗体或背景色给用户以提示,合理的页面布局、适量的图表都可以给用户更高的易用性。需要注意的是文档要有助于用户排除错误。不但描述正确操作,也要描述错误处理办法。
5