1、,IT职业及能力要求 软件测试工程师,一:软件测试职业二:软件测试员职业能力要求,内容提要,与软件相关的IT职业分类,IT主体职业,IT应用职业,软件类,应用系统开发类,系统分析师 计算机程序设计员 软件测试师 软件项目管理师 系统架构设计师,嵌入式系统开发师 网站开发师 游戏程序开发师 射频识别系统开发师,IT相关职业,软件测试,软件测试:根据程序开发阶段的规格说明及程序内部结构而精心设计的一批测试用例(输入数据及其预期结果的集合),并利用这些测试用例去运行程序,以发现错误的过程。 几个关键词: 规格说明 程序内部结构 测试用例 运行程序 发现错误,软件测试工程师,软件测试工程师(Softw
2、are Testing Engineer)指理解产品的需求,根据需求设计测试用例,并对其进行测试,检查软件有没有错误(Bug),决定软件是否具有稳定性(Robustness)的专门工作人员。 高级软件测试工程师,熟练掌握软件测试与开发技术,且对所测试软件对口行业非常了解,能够对可能出现的问题进行分析评估; 中级软件测试工程师,编写软件测试方案、测试文档,与项目组一起制定软件测试阶段的工作计划,能够在项目运行中合理利用测试工具完成测试任务; 初级软件测试工程师,其工作通常都是按照软件测试方案和流程对产品进行功能测验,检察产品是否有缺陷。,软件测试工程师职业发展方向,软件测试工程师职业发展模型(双
3、V模型),软件测试工程师平均薪酬,一:软件测试职业二:软件测试员职业能力要求,内容提要,软件测试员职业能力框架,主要能力要求,掌握测试技术 程序开发能力 使用测试工具 搭建测试环境(软件环境) 持续学习能力 融入团队,软件测试基础,软件测试技术,软件测试技术 静态测试技术 评审(文档、代码)、走查(代码)、分析(代码) 动态测试技术 白盒测试技术 语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、多重条件覆盖、MCDC覆盖、路径覆盖。 黑盒测试技术 等价类划分、边界值分析、因果图、判定表、随机测试、错误推测法、功能图、正交试验、基于场景,软件测试技术(1),静态测试技术 不执行程序代码而寻找文档、
4、程序代码可能存在的错误的过程。 主要包括由人工进行的软件需求审查、设计审查、代码审查、代码走查和由软件工具辅助进行的代码静态分析。 特点 不必设计(或在计算机上执行)测试用例 可充分发挥人的逻辑思维优势 不需特别条件,容易开展 发现错误的同时也就定位了错误,不需作额外的错误定位工作,软件测试技术(2),动态测试技术 在抽样测试数据上执行程序并分析输出以发现错误的过程 包括黑盒测试和白盒测试两种技术。 特点 实际运行被测程序 必须设计测试用例来运行 测试结果分析工作量大,测试工作费时、费力 投入人员多、设备多,处理数据多,要求有较好的管理和工作规程,软件测试技术(3),黑盒测试技术 是一种按照软
5、件功能说明设计测试数据的技术。 不考虑程序内部结构和编码结构,也不需考虑程序中的语句及路径,只需了解输入输出之间的关系,依靠这一关系和软件功能说明确定测试数据,判定测试结果的正确性。 黑盒测试技术包括等价类划分、边界值分析、因果图、随机测试和错误推测法等。 常用于功能、边界、强度、数据处理、容量测试。,自动化测试工具,HP-Mercury Interactive IBM-Rational Compuware,HP-Mercury Interactive,Winrunner:是一种企业级的功能测试工具,用于检测应用程序是否能够达到预期的功能及正常运行。 LoadRunner :是一种预测系统行为
6、和性能的负载测试工具。 QuickTest Professional:QTP 是一个B/S系统的自动化功能测试的利器,软件功能测试工具。 TestDirector: 是一个基于 Web 的测试管理工具 需求管理、测试计划、测试实验室和缺陷管理。 Quality Center:是一个基于Web的测试管理工具,可以组织和管理应用程序测试流程的所有阶段,包括指定测试需求、计划测试、执行测试和跟踪缺陷。,IBM-Rational,Rational Functional Tester(RFT) Rational Robot Rational TestManager Rational ClearQuest
7、,Compuware,QACenter 自动化的黑盒测试工具 Reconcile (测试需求管理 ) QARun (自动的捕获和回放) QADirector (测试管理和设计) QALoad (应用性能加载) TrackRecord (缺陷跟踪) WebCheck (Web站点质量分析) TestPartner (web应用功能测试),另一个话题:.NET软件工程师,核心能力:按项目规定的要求创建构件,实施单元测试,修改构件的缺陷,最终交付构件的能力; 专业能力:能够熟练搭建开发环境,按实施要求使用项目规定的工具和方法高效实施,并能根据项目组使用的开发流程、规范和质量标准开发出合格的构件; 基本能力:确保自己具备.NET程序员从业资格,并能有效管理实施工作环境的能力。,谢 谢 !,交流,