21、软件都有多少种分类?
  固件、支持软件、系统软件、应用软件
  22、你认为软件测试过程中较常见的困难是什么?如何有效克服这些困难? (根据自己实际测试中遇到的情况来写的)
  ①Bug的重现问题:有些Bug只是偶尔出现的,根本不知道具体需要什么条件才能重现Bug.
  解决方法:将不能重现的Bug,利用截图的方式记录下来。并说明一系列的操作步骤
  ②Bug的更新:旧的Bug修改好之后,很多时候会引发更多Bug的出现。
  解决方法:对更新的功能模块重点的测试之后,再重新测试和更新的功能密切的模块,会不会产生新的Bug.
  ③与开发人员的沟通和对业务流程理解的分歧,经常缺少需求文档
  解决方法:根据需求说明书和Bug情况,多多和开发人员进行交流
  23、测试计划工作的目的是什么?测试计划工作的内容都包括什么?其中哪些是重要的?
  软件测试计划是指导测试过程的纲领性文件,对测试工作的计划和安排包含了产品概述、测试策略、测试方法、测试区域、测试配置、测试周期、测试资源、测试交流、风险分析等内容。借助软件测试计划,参与测试的项目成员,尤其是测试管理人员,可以明确测试任务和测试方法,保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更。
  测试计划和测试详细规格、测试用例之间是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、方法和资源配置,而测试详细规格、测试用例是完成测试任务的具体战术。所以其中重要的是测试测试策略和测试方法(好是能先评审)
  24、怎样保证你所负责的模块通过了测试
  首先是了解用户的需求,设计好的测试用例,严格的进行用例的评审,认真的执行测试用例,对自己提交的Bug进行详细的描述。
  反复测试,增强测试的准确性,通过冒烟回归随机测试挖掘缺陷提高测试工作质量,把各个模块整体运行发现未曾出现的错误,完善测试用例
  25、您认为性能测试工作的目的是什么?做好性能测试工作的关键是什么?
  性能测试工作的目的是检查系统是否满足在需求说明书中规定的性能,性能测试常常需要和强度测试结合起来,并常常要求同时进行软件和硬件的检测。性能测试主要的关注对象是响应时间,吞吐量,占用内存大小(辅助存储区),处理精度等。
  26、怎么编写案例
  案例的编写与测试阶段的定义有很大的关系。系统测试和unit测试的案例可能不同。总体而言测试案例根据系统的需求而定。
  27、怎么才能够全面的测试到每一个点
  测试的全面性主要需要在设计测试计划的时候考虑,从测试策略,产品需求等等多个角度考虑从而定义全部的测试点。
  28、常用的测试工具及分类
  功能测试工具 — QTP;性能测试工具 — PerfermanceRunner/Loadrunner;测试管理工具 — TestCenter;
  白盒测试工具 — Nunit,Junit,C++Test,JTest,BoundsChecker,Logiscope
  29、软件测试与调试的关系?
  1) 测试条件已知,规程可定义,结果可预知2) 测试可以计划,过程可控3) 测试是检验,调试是推理过程4) 测试表明程序失败,调试表明正确5) 测试可不了解设计细节6) 测试由非设计人员完成7) 测试有理论依据8) 测试可自动化
  30、给你一个网站,你如何测试?
  1.查找需求说明、网站设计等相关文档,分析测试需求。
  2.制定测试计划,确定测试范围和测试策略,一般包括以下几个部分:功能性测试、界面测试、性能测试、数据库测试、安全性测试、兼容性测试。
  3.设计测试用例:
  功能性测试:1链接测试。链接是否正确跳转,是否存在空页面和无效页面,是否有不正确的出错信息返回等。2提交功能的测试。3多媒体元素是否可以正确加载和显示。4多语言支持是否能够正确显示选择的语言等。
  界面测试:1页面是否风格统一,美观  2页面布局是否合理,重点内容和热点内容是否突出   3控件是否正常使用   4对于必须但为安装的空间,是否提供自动下载并安装的功能  5文字检查
  性能测试:压力测试、负载测试、强度测试
  数据库测试:要具体决定是否需要开展。数据库一般需要考虑连结性,对数据的存取操作,数据内容的验证等方面。
  安全性测试:1基本的登录功能的检查2是否存在溢出错误,导致系统崩溃或者权限泄露3相关开发语言的常见安全性问题检查,例如SQL注入等。4如果需要高级的安全性测试,确定获得专业安全公司的帮助,外包测试,或者获取支持
  兼容性测试:根据需求说明的内容,确定支持的平台组合。1浏览器的兼容性2操作系统的兼容性3软件平台的兼容性4数据库的兼容性
  4.开展测试,并记录缺陷。合理的安排调整测试进度,提前获取测试所需的资源,建立管理体系(例如,需求变更、风险、配置、测试文档、缺陷报告、人力资源等内容)。
  5.定期评审,对测试进行评估和总结,调整测试的内容。
  31、您在从事性能测试工作时,是否使用过一些测试工具?如果有,请试述该工具的工作原理,并以一个具体的工作中的例子描述该工具是如何在实际工作中应用的。
  有使用过LoadRunner,该工具能够录制测试人员的操作步骤,然后对这个操作步骤模拟出多个用户来播放出来。1.Visural User Genertor创建脚本,选择协议,录制操作,编辑操作。2.中央控制器(Controller)调度虚拟用户。创建场景,选择脚本,建立虚拟用户,设计shedual,设置ip spoofer。3.运行脚本。分析shedual。4.分析测试结果。
  32、怎样做好测试计划
  1.理解系统。从整个系统的高度了解被测系统必须满足的功能和非功能性需求。利用涉及整个系统的文档,形成对系统的整体了解。
  2.及早介入。为了深入了解项目,测试人员应该在系统的开始阶段介入,可以增加对客户需求,客户问题,潜在风险,以及重要的功能方面的理解
  3.测试期望。程序员的期望是什么?客户的期望是什么?销售对测试的期望又是什么?测试目标必须是的,以免说不清楚是否达到目标。
  4.吸取教训。把以前工作中学习到的经验教训运用过来,对确定测试策略很有作用。
  5.工作量大小。完成测试需要多少工作量?需要多少人员?
  6.技术选择。系统会采取什么技术?系统会采用什么架构?这些信息有助于确定测试策略和测试工具。
  7.时间表。系统开发和测试分配的时间有多长?截止日期是什么时候?
  33、您是否了解以往所工作的企业的软件测试过程?如果了解,请试述在这个过程中都有哪些工作要做?分别由哪些不同的角色来完成这些工作?
  软件测试部门配合系统分析人员软件需求分析讨论,并根据需求说明书制定《项目测试计划》,编写测试用例,建立测试环境。软件测试人员负责软件开发部门的新产品测试及原有产品的升级测试,负责软件问题解决过程跟踪,负责软件开发文档开发工作的规范化及管理开发部门的产品文档,制作用户手册及操作手册,负责产品的上线测试,监督软件开发过程的执行,提高产品质量。需求人员连同系统分析人员&测试人员开会讨论需求。系统分析人员写出需求分析说明,并连同系统分析人员&测试人员&需求人员开会讨论可行性。系统分析人员写出详细设计说明书,程式人员编码,给出系统流程图。交与测试人员,测试人员给出Bug统计表。
  34、系统测试阶段低级缺陷较多怎么办?
  公司有预测试这个流程,会在开展测试活动之前对主要功能点的正常流程做一个测试,以判断这个版本是不是可测试版本,如果低级缺陷比较多,严重阻碍测试执行的话,我们会打回开发部,不执行测试。
  35、缺陷流落到客户那里怎么办?
  我们公司会尽可能的避免这种情况的出现,让软件缺陷在内部得到解决,万一版本上线了才发现有问题,我们也会及时派技术人员在短的时间内做出修改,把客户的损失降到低。