《微软自动化框架搭建.ppt》由会员分享,可在线阅读,更多相关《微软自动化框架搭建.ppt(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、SDM212微软软件测试自动化微软软件测试自动化王志峰王志峰 (Jeff Wang)(Jeff Wang)BizTalk ServerBizTalk ServerMicrosoft CorporationMicrosoft Corporation提要提要 微软的软件测试微软的软件测试微软的软件测试微软的软件测试 一个完善的自动化测试系统一个完善的自动化测试系统一个完善的自动化测试系统一个完善的自动化测试系统 自动测试用例设计要点自动测试用例设计要点自动测试用例设计要点自动测试用例设计要点 测试用例的管理和运行控制测试用例的管理和运行控制测试用例的管理和运行控制测试用例的管理和运行控制 提高提高
2、提高提高软件测试自动化的步骤软件测试自动化的步骤软件测试自动化的步骤软件测试自动化的步骤 测试自动化误区和风险测试自动化误区和风险测试自动化误区和风险测试自动化误区和风险什么是软件测试?什么是软件测试?-两种经典理念两种经典理念验证软件是验证软件是验证软件是验证软件是“工作的工作的工作的工作的”代表人物是软件测试领域的先驱代表人物是软件测试领域的先驱Dr.Bill Dr.Bill HetzelHetzel(代表论著(代表论著The Complete Guide to Software The Complete Guide to Software TestingTesting)主流和行业标准主流
3、和行业标准微软软件测试活动的微软软件测试活动的基础和主要线索基础和主要线索证明软件是证明软件是证明软件是证明软件是“不工作的不工作的不工作的不工作的”代表人物是代表人物是GlenfordGlenford J.Myers J.Myers(代表论著(代表论著The The Art of Software TestingArt of Software Testing)一个成功的测试必须是发现一个成功的测试必须是发现BugBug的测试,不然就没的测试,不然就没有价值有价值 微软也阶段性地进行这类测试活动微软也阶段性地进行这类测试活动 (Bug Bash)(Bug Bash)什么是微软的软件测试什么是微
4、软的软件测试是软件开发的依赖是软件开发的依赖是软件开发的依赖是软件开发的依赖每日建造每日建造+自动化测试自动化测试 开发人员依赖测试来保证开发工作的质量,使开开发人员依赖测试来保证开发工作的质量,使开发整体地协调地向前推进发整体地协调地向前推进 是项目管理的基础是项目管理的基础是项目管理的基础是项目管理的基础软件项目管理的主要线索就是软件项目管理的主要线索就是BugBug的管理的管理软件测试的结果是项管理和决策的主要依据软件测试的结果是项管理和决策的主要依据一个完善的自动化测试体系一个完善的自动化测试体系开发环境开发环境开发语言,库程序,驱动程序,开发工具测试用例管理测试用例管理测试用例的定义
5、,设置,分类和组合运行分析报告分析报告单运行结果报告,多运行综合报告,长期走势报告运行环境运行环境机器池,自动安装和配置,运行代码管理代码管理存储,编译硬件,基础设施硬件,基础设施实验室,机器,网络实例实例测试用例设计:测试用例设计:BizTalk SQL AdapterSQL AdapterXML Message表表表SQL 数据库BizTalk 服务器BizTalk 应用应用测试用例运行步骤测试用例运行步骤:前提前提验证验证BizTalk BizTalk 已安装设置好已安装设置好验证验证SQLSQL数据库在运行数据库在运行设置设置在在BizTalkBizTalk中设置一个使用中设置一个使用
6、SQL AdapterSQL Adapter的应用的应用在在SQLSQL数据库中建立测试表格数据库中建立测试表格运行运行生成一个预定格式的生成一个预定格式的Message:XMLMessage:XML字符串字符串将将MessageMessage发送给发送给BizTalkBizTalk验证验证访问访问SQLSQL数据库,验证数据到达无误数据库,验证数据到达无误验证系统日志中无意外事件验证系统日志中无意外事件清理清理删除删除BizTalkBizTalk中的应用中的应用删除删除SQLSQL中的表格中的表格其他意外情况下的特殊清理其他意外情况下的特殊清理自动化测试的核心自动化测试的核心测试代码测试代码
7、自动测试程序设计要点自动测试程序设计要点对前提条件进行验证对前提条件进行验证对前提条件进行验证对前提条件进行验证能处理各种可能的意外,并对有关设置进行彻能处理各种可能的意外,并对有关设置进行彻能处理各种可能的意外,并对有关设置进行彻能处理各种可能的意外,并对有关设置进行彻底清除,以不影响后续测试用例的运行底清除,以不影响后续测试用例的运行底清除,以不影响后续测试用例的运行底清除,以不影响后续测试用例的运行各测试用例有相对独立性,不相互依赖,便于各测试用例有相对独立性,不相互依赖,便于各测试用例有相对独立性,不相互依赖,便于各测试用例有相对独立性,不相互依赖,便于进行各种运行组合进行各种运行组合
8、进行各种运行组合进行各种运行组合有好的日志有好的日志有好的日志有好的日志设计简洁,代码可读性高设计简洁,代码可读性高设计简洁,代码可读性高设计简洁,代码可读性高易于运行易于运行易于运行易于运行稳定性重于性能稳定性重于性能稳定性重于性能稳定性重于性能具有一定的灵活性,能快速适应产品功能设计具有一定的灵活性,能快速适应产品功能设计具有一定的灵活性,能快速适应产品功能设计具有一定的灵活性,能快速适应产品功能设计的更改的更改的更改的更改测试用例的分级,及运行频度测试用例的分级,及运行频度BVTBVT第一级第一级第一级第一级第二级第二级第二级第二级高级高级高级高级定义定义定义定义最简单的最简单的最简单的
9、最简单的功能验证功能验证功能验证功能验证所有非出所有非出所有非出所有非出错情形下错情形下错情形下错情形下的代码路的代码路的代码路的代码路径径径径所有出错所有出错所有出错所有出错情形下的情形下的情形下的情形下的代码路径代码路径代码路径代码路径压力,性压力,性压力,性压力,性能,安全能,安全能,安全能,安全性性性性运行频度运行频度运行频度运行频度每日每日每日每日隔日隔日隔日隔日每周每周每周每周根据需要根据需要根据需要根据需要注:BVT 是Build Verification Test的缩写测试用例管理测试用例管理测试用例测试用例测试用例测试用例最小的设置单元最小的设置单元最小的设置单元最小的设置单
10、元测试用例组合测试用例组合测试用例组合测试用例组合一系列的测试用例,可以包含其一系列的测试用例,可以包含其一系列的测试用例,可以包含其一系列的测试用例,可以包含其他测试用例组合。是可运行和报告的基本单元他测试用例组合。是可运行和报告的基本单元他测试用例组合。是可运行和报告的基本单元他测试用例组合。是可运行和报告的基本单元测试报告测试报告高级自动化的关键高级自动化的关键-硬件的管理硬件的管理实验室,自动测试机器池实验室,自动测试机器池实验室,自动测试机器池实验室,自动测试机器池动态的选用测试机器动态的选用测试机器动态的选用测试机器动态的选用测试机器自动安装测试平台自动安装测试平台自动安装测试平台
11、自动安装测试平台监控机器工作状态监控机器工作状态监控机器工作状态监控机器工作状态支持测试工具,进行多机协同运行支持测试工具,进行多机协同运行支持测试工具,进行多机协同运行支持测试工具,进行多机协同运行测试自动化的发展阶段与计划测试自动化的发展阶段与计划无自动测试无自动测试无自动测试无自动测试阶段阶段阶段阶段自动测试初自动测试初自动测试初自动测试初始阶段始阶段始阶段始阶段自动测试发自动测试发自动测试发自动测试发展阶段展阶段展阶段展阶段自动测试成自动测试成自动测试成自动测试成熟阶段熟阶段熟阶段熟阶段自动测试高自动测试高自动测试高自动测试高级阶段级阶段级阶段级阶段特征特征特征特征l l无自动测试用无
12、自动测试用例,测试工作例,测试工作全部手工操作全部手工操作l l非专业人员从非专业人员从事测试事测试l l有脚本文件驱有脚本文件驱动的半自动测动的半自动测试试l l无机算计软件无机算计软件专业人员从事专业人员从事测试测试l l无工具,无实无工具,无实验室验室l l有部分测试用有部分测试用例全部自动化例全部自动化l l有机算计软件有机算计软件专业人员从事专业人员从事测试代码的开测试代码的开发,使用发,使用JavaJava,C#C#语言语言l l使用工具和专使用工具和专门的实验室测门的实验室测试环境试环境l l大量测试用例大量测试用例全部自动化全部自动化l l有自己开发的有自己开发的共用代码库共用
13、代码库l l有测试用例自有测试用例自动运行系统,动运行系统,并与产品建造并与产品建造系统项结合系统项结合l l有测试报告和有测试报告和统计分析服务统计分析服务l l有高水平的测有高水平的测试开发人员,试开发人员,测试架构师测试架构师l l有高度自动化有高度自动化的实验室系统,的实验室系统,和专业的系统和专业的系统管理队伍管理队伍l l有完善的自动有完善的自动化测试流程化测试流程l l能对外提供自能对外提供自动测试的商业动测试的商业服务服务计划和计划和计划和计划和措施措施措施措施l l培训和引进人培训和引进人才才l l培训和引进机培训和引进机算计软件专业算计软件专业人才人才l l尝试测试工具尝试
14、测试工具l l建立实验室建立实验室l l培训和引进高培训和引进高级编码人才级编码人才l l由开发人员帮由开发人员帮助设计测试代助设计测试代码库码库l l系统的选择使系统的选择使用和整合各种用和整合各种工具工具l l培训和引进测培训和引进测试设计和架构试设计和架构人才人才l l进一步提高实进一步提高实验室系统验室系统l l建立流程模型建立流程模型和商业服务模和商业服务模型型测试自动化的风险测试自动化的风险代价高,所以要根据项目的特点,团队技术水代价高,所以要根据项目的特点,团队技术水平确定适当的自动化率平确定适当的自动化率测试覆盖偏向易于自动化的功能。要进行代码测试覆盖偏向易于自动化的功能。要进行代码覆盖率的度量覆盖率的度量错误的测试设计可能使测试情境与用户使用情错误的测试设计可能使测试情境与用户使用情境相背离境相背离忽视第二类以搜寻缺损为目的的探索性测试忽视第二类以搜寻缺损为目的的探索性测试工具的选用不当,过多过杂,频繁更换。工具的选用不当,过多过杂,频繁更换。产品的可测性低产品的可测性低参考资料参考资料微软的软件测试方法微软的软件测试方法微软的软件测试方法微软的软件测试方法http:/ 问题?问题?谢谢大家!欢迎交流!谢谢大家!欢迎交流!谢谢大家!欢迎交流!谢谢大家!欢迎交流!请填写反馈意见表请填写反馈意见表请填写反馈意见表请填写反馈意见表