1、什么是兼容性测试?兼容性测试侧重哪些方面?
参考答案:兼容测试主要是检查软件在不同的硬件平台、软件平台上是否可以正常的运行,即是通常说的软件的可移植性。兼容的类型,如果细分的话,有平台的兼容,网络兼容,数据库兼容,以及数据格式的兼容。兼容测试的重点是,对兼容环境的分析。通常,是在运行软件的环境不是很确定的情况下,才需要做兼容。根据软件运行的需要,或者根据需求文档,一般都能够得出用户会在什么环境下使用该软件,把这些环境整理成表单,就得出做兼容测试的兼容环境了。兼容和配置测试的区别在于,做配置测试通常不是Clean OS下做测试,而兼容测试多是在Clean OS的环境下做的。
2、我现在有个程序,发现在Windows上运行得很慢,怎么判别是程序存在问题?
参考答案:
1、检查系统是否有中毒的特征;
2、查软件/硬件的配置是否符合软件的推荐标准;
3、确认当前的系统是否是独立,即没有对外提供什么消耗CPU资源的服务; 如 果是C/S或者B/S结构的软件,需要检查是不是因为与服务器的连接有问题,或者访问有问题造成的;
4、在系统没有任何负载的情况下,查看性能监视器,确认应用程序对CPU/内存的访问情况。
3、测试的策略有哪些?
参考答案:黑盒/白盒,静态/动态,手工/自动,冒烟测试,回归测试,公测(Beta测试的策略)
4、正交表测试用例设计方法的特点是什么?
参考答案:
用最少的实验覆盖最多的操作,测试用例设计很少,效率高,但是很复杂;
对于基本的验证功能,以及二次集成引起的缺陷,一般都能找出来;但是更深的缺陷,更复杂的缺陷,还是无能为力的;具体的环境下,正交表一般都很难做的。大多数,只在系统测试的时候使用此方法。
5、描述使用bugzilla缺陷管理工具对软件缺陷(BUG)跟踪的管理的流程?
参考答案: 就是Bugzilla的状态转换图。
6、你觉得bugzilla在使用的过程中,有什么问题?
参考答案: 界面不稳定;根据需要配置它的不同的部分,过程很烦琐。流程控制上,安全性不好界定,很容易对他人的Bug进行误操作;没有综合的评分指标,不好确认修复的优先级别。
7、描述测试用例设计的完整过程?
参考答案: 需求分析 + 需求变更的维护工作; 根据需求得出测试需求;设计测试方案,评审测试方案;方案评审通过后,设计测试用例,再对测试用例进行评审;
8、单元测试的策略有哪些?
参考答案:
逻辑覆盖、循环覆盖、同行评审、桌前检查、代码走查、代码评审、景泰数据流分析
9、LoadRunner分哪三部分?
参考答案:用户动作设计;场景设计;测试数据分析;
10、LoadRunner进行测试的流程?
参考答案:
1、测试测试
2、创建虚拟用户脚本
3、创建运行场景
4、运行测试脚本
5、监视场景
6、分析测试的结果以上,最好是结合一个案例,根据以上流程来介绍。
11、什么是并发?在lordrunner中,如何进行并发的测试?集合点失败了会怎么样?
参考答案:
在同一时间点,支持多个不同的操作。LoadRunner中提供IP伪装,集合点,配合虚拟用户的设计,以及在多台电脑上设置,可以比较好的模拟
真实的并发。集合点,即是多个用户在某个时刻,某个特定的环境下同时进行虚拟用户的操作的。集合点失败,则集合点的才操作就会取消,测试就不能进行。
12、使用QTP做功能测试,录制脚本的时候,要验证多个用户的登录情况/查询情况,如何操作?
13、bug的生命周期
测试人员发现bug->New(新建),测试组长确认bug是否Duplicate(重复),如果重复Abandon(废弃),如果不重复Open(打开),指派给开发经理确认是否Reject(拒绝),不拒绝确认是否postpone(延期),不延期Assign(分配)给开发人员fixed(修复),如果拒绝指派给CCB(变更控制委员会)审查(Reviewed)通过(passed)指派给开发人员fixed(修复),修复完成Building,测试人员Validate(验证),验证不通过Reopen(重新打开),验证通过,close(关闭),审查不通过Abandon。
14、软件生命周期
软件生命周期(SDLC,Systems Development Life Cycle,SDLC)是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。但随着新的面向对象的设计方法和技术的成熟,软件生命周期设计方法的指导意义正在逐步减少。
15、测试项目:电梯
需求测试:查看电梯使用说明书、安全说明书等
界面测试:查看电梯外观
功能测试:测试电梯能否实现正常的上升和下降功能.电梯的按钮是否都可以用;
电梯门的打开,关闭是否正常;报警装置是否可用,报警电话是否可用;
通风状况如何.突然停电时的情况;是否有手机信号;
比如说上升途中的响应。电梯本来在1楼,如果有人按18楼,那么电梯在上升到5楼的时候,有人按了10楼,这时候是否会在10楼先停下来;
电梯下降到10层时显示满员,此时若8层有人等待电梯,是否在8层停;
可靠性:门关上的一刹那出现障碍物,同时按关门和开门按钮,点击当前楼层号码,多次点击同一楼层的号码等等;同时按上键和下键会怎样;
易用性:电梯的按钮的设计符合一般人使用的习惯吗.
用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述
压力测试:看电梯的最大限度的承受重量.在负载过重时报警装置是否有提醒.在一定时间内不断的让电梯上升,下降.最大负载下平稳运行的最长时间。
16、测试项目:杯子
需求测试: 查看杯子使用说明书
界面测试: 查看杯子外观
功能度:用水杯装水看漏不漏;水能不能被喝到
安全性:杯子有没有毒或细菌
可靠性:杯子从不同高度落下的损坏程度
可移植性:杯子在不同的地方、温度等环境下是否都可以正常使用
兼容性:杯子是否能够容纳果汁、白水、酒精、汽油等
易用性:杯子是否烫手、是否有防滑措施、是否方便饮用
用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述
疲劳测试:将杯子盛上水(案例一)放24 小时检查泄漏时间和情况;盛上汽油(案例二)放24 小时检查泄漏时间和情况等
压力测试:用根针并在针上面不断加重量,看压强多大时会穿透
跌落测试: 杯子加包装( 有填充物), 在多高的情况摔下不破损
震动测试: 杯子加包装( 有填充物), 六面震动, 检查产品是否能应对恶劣的铁路\ 公路\ 航空运输
测试数据:测试数据具体编写此处略(最讨厌写测试数据了)。其中应用到:场景法、等价类划分法、因果图法、错误推测法、边界值法等方法
期望输出:该期望输出需查阅国标、行标以及使用用户的需求
17、测试题目:桌子
需求测试:查看国家相关标准。
功能:桌子是办公,或者放置用的,首先考虑桌子的面积大小是否适度.
界面:桌子的版面是否平滑,桌子有没有凹凸不平的地方
安全:桌子肯定有它的支撑点,若支撑点不稳,容易摔坏物品,使用起来也不方便.
易用:桌子的移动性好不.它的重量是否合适
可靠性:将桌子推倒后,再检查桌子是否很容易被损坏.
性能:将很重的物品放在桌子上,看它最大承受的重量是多少...
19、测试题目:洗衣机
功能测试:该洗衣机是否能正常的洗衣服
需求测试:查看洗衣机的使用说明书和安全说明书等
性能测试:使用时用电量如何,是否满足用户需求
界面测试:洗衣机的外观是否满足客户的需求
易用测试: 该洗衣机是否容易操作
兼用性测试:该洗衣机除了能洗衣服以外还能洗别的吗
安全性测试:该洗衣机通电以后人接触以后是否有电
负载测试:通过逐步增加系统负载,最终确定在什么负载条件下系统性能将处于崩溃状态,以此获得系统能提供的最大服务
压力测试:通过逐步增加系统负载,最终确定在什么负载条件下系统性能将处于崩溃状态,以此获得系统能提供的最大服务级别的测试。
稳定性测试:加到一定的衣服然后过一段时间看洗衣机是否正常洗;
20、软件验收测试的合格通过准则:
①、软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
②、所有测试项没有残余一级、二级和三级错误。
③、立项审批表、需求分析文档、设计文档和编码实现一致。
④、验收测试工件齐全。
21、软件实施活动的进入准则:
①、需求工件已经被基线化;
②、详细设计工件已被基线化;
③、构架工件已被基线化。
22、比较负载测试和强度测试的区别:
负载测试:在一定的工作负荷下,系统的负荷及响应时间;
强度测试:在一定的负荷条件下,在较长时间跨度内的系统连续运行给系统性能所造成的影响;
23、描述软件测试活动的生命周期:
测试周期分为计划、设计、实现、执行、总结。
计划:对整个测试周期中所有活动进行规划,估计工作量、风险,安排人力物力资源,安排进度等;
设计:完成测试方案,从技术层面上对测试进行规划;
实现:进行测试用例和测试规程设计;
执行:根据前期完成的计划、方案、用例、规程等文档,执行测试用例;
总结:记录测试结果,进行测试分析,完成测试报告;
24、测试的目的:
测试的目的:软件测试是程序的一种执行过程,目的是尽可能发现并改正被测试软件中的错误,提高软件的可靠性。它是软件生命周期中一项非常重要且非常复杂的工作,对软件可靠性保证具有极其重要的意义。
25、测试流程依次如下:
1.需求:阅读需求,理解需求,与客户、开发、架构多方交流,深入了解需求。--testing team
2.测试计划: 根据需求估算测试所需资源(人力、设备等)、所需时间、功能点划分、如何合理分配安排资源等。---testing leader or testing manager
3.用例设计:根据测试计划、任务分配、功能点划分,设计合理的测试用例。---testing leader, senior tester
4.执行测试:根据测试用例的详细步骤,执行测试用例。--every tester(主要是初级测试人员)
5.执行结果记录和bug记录:对每个case记录测试的结果,有bug的在测试管理工具中编写bug记录。--every tester(主要是初级测试人员)
6.defect tracking:追踪leader分配给你追踪的bug.直到 bug fixed。--every tester
7.测试报告:通过不断测试、追踪,直到被测软件达到测试需求要求,并没有重大bug.
8.用户体验、软件发布等……
跟双V模型差不多
26、敏捷开发有如下特征:
1. 工作在小的团队中
2. 团队是跨功能的-包括测试人员,开发人员,文档开发人员等等
3. 短迭代-利用短迭代方法来交付软件
4. 相较于文档,敏捷开发更注重面对面的交流
5. 敏捷不是一个过程,而是一个软件开发的形式或者方法
6. 敏捷可以与软件过程如CMMI等一起实施
27、测试用例包括:
用例编号、测试项目、测试标题、预置条件、重要级别、输入、执行步骤、预期输出;(作者 备注)