.Net Testing Guide Fundamentals, Tools and practices
.net 软件测试基础篇
1. 软件质量测试基础介绍
u 软件质量与软件测试
l 仅依靠软件测试不能保证软件质量
l 进行全面质量管理
u 软件开发与软件测试
l 具备UML或编程可以做更多层面的测试,如单元,白盒,性能测试
u 测试工具与软件测试
l 按照用途分
n 测试管理工具
n 自动化功能测试工具
n 性能测试工具
n 单元测试工具
n 白盒测试工具
n 测试用例设计工具
l 按收费方式
n 商业测试工具
n 开源测试工具
n 免费测试工具
l 正确使用测试工具
u MSF(Microsoft solution Framework,微软的项目管理)中的软件测试
l 推行一个从角色到使用方案的设计流程
l 开发过程采用循环型的三星期的周期
l 要求单元测试 程序和开发程序的源代码一起提交
l 要求100%的源代码执行测试 (code coverage)
2. 。Net软件基础介绍
u 。net平台
u 内存管理与测试方法(CLRProfiler,GdiUsage,AQTime测试内存泄漏)
u 反射机制在测试中的应用 (很多测试工具采用反射机制进行测试如QTP)
u 。net平台的开发工具和测试工具
l 开发工具:VSTS,team foundation,Team edition for architects,developers,tester
l 测试工具
n 单元测试,nunit,nmock,nunitforms
n 代码分析和检查工具 devPartner,styleCop
n 性能测试:LoadRunner,NTime,AQTime
u 。net软件类型(c/s结构,b /s结构,web服务,智能设备) 及其测试
3. 。net软件调试
u 调试与测试
u 测试人员掌握基本调试能力
u vs基本调试技巧
u 断言与跟踪 Debug,Trace
u diagonostics类的使用
u datasetWatch调试dataset
u 托管程序单独监视
l ManagedSpy可以显示托管程序的控件属性和事件等信息
4. vs。net的单元测试 (数据驱动DDT,code coverage)
5. Nunit,NMock,NCover,NUnitForms(界面层测试)
6. 。net代码分析及自动化
u 单元测试与代码分析
l 广义的单元测试则可以是编写单元模块的测试代码,代码标准检查,注释检查,代码整齐度检查,代码审查,单个功能模块的测试等
u Vs 2005 FxCop,vs2008 code analysis (FxCop的规则可以自定义开发)
u Computer DevPartner Studio中的代码分析工具
l CodeReview
l Code Review结果分析,规则筛选
l Rule Manager编辑代码规则和描述,代码规则触发条件
l Rule manager添加自定义规则
u StyleCop测试。Net代码风格
7. 让客户参与到测试中来 ---FIT(Framework for integrated Test)
u 让客户可以通过HTML表格的形式编写测试用例,用于对代码进行直接的测试。
u VS中开发FIT testfixture
u FitRunner.net, 开源工具,辅助fit运行
u 把Fit整合到Wiki中,FitNesse(软件开发协作工具),使用FitNesse测试。Net代码
8. QTP
u 插件for。Nert
u QTP支持的WPF控件
u QTP支持的windows form控件
u QTP支持的web form控件
u Object Spy
u Windows form Spy
u DotNetFactory 类库
u 录制运行
u QTP对象模型
u QTP 。net插件扩展开发
u QTP for ruby,java
9. TestComplete
u 基本使用,测试项目创建,脚本录制编辑运行
u TestComplete既可以把其当成普通windows 控件来测试,也可以把其作为open的程序来进行测试。
u TestComplete对象模型
u TestComplete与MSTest的整合
u TestComplete提供了ODT(对象驱动测试)
10. 。net 自动化测试
u 调用windows API
u Spy++
u FindWindEx。Automation类等API
u 反射
u 利用正则表达式协助测试,文件处理功能协助测试,COM接口等
11. 猴子测试(随机测试技术)
u TestComplete中的Random,持续记录被测试程序的相关信息,Logman,Log.Picture截屏
u 让猴子测试工具更加智能
12. Vs。net中的负载测试
u 冒烟测试:验证和测试程序在短时间内负载最小的情况下是如何执行的
u 压力测试:验证和测试程序在较长时间内负载较大的情况下是否能正确运行
u 性能测试:验证和测试程序的响应能力
u 容量测试计划:验证和测试程序在各种容量下是如何执行的
u Vs.net内置 录制web测试,创建负载测试方案,负载测试计数器集,运行负载测试,分析负载测试结果,集成sql跟踪功能
13. 单元级别的性能测试
u NTime 进行代码的性能分析
u AQTime进行代码的性能分析,集成到vs.net
u Vs提供了性能工具
14. 使用LoadRunner进行性能测试
2. .net 软件测试基础篇
1. 。net软件的安全性测试
u 内存泄漏 MemProof,AQTime,Purify,BundsChecker,CLRPriler,GdiUsage
u Cookie安全测试,加密,内容检查,禁用篡改cookie测试
u 拒绝服务威胁检测的方法,主要通过代码审查
u 测试程序是否创建安全的错误信息,包括日志。避免被窃取
u CSS安全,跨站脚本攻击 ,TamperIE辅助测试
u SQL注入
u 安全测试工具 Wapiti检测网页漏洞
2. 。net软件的界面及用户体验测试
u 。net标准控件 windows fomr,web form,wpf
u 第三分 Component One,DeveExpress,Infragistics
u 软件界面规范制定
u TestComplete简单界面规范测试自动化
u 可访问性 Accessibility 测试机器自动化 Web Accessibility Toolbar,Colour Contrast Analyser进行颜色对比,QTP进行可访问性测试
u 全球化测试,vs中的Code analysis进行测试
3. .net网络软件的测试
u 链接测试 Xenu链接测试工具
u Asp.net 页面自动化测试,使用DOM,mshtml。Dll,shdocvw。dll
u IE Dom Inspector
u Mozilar Firefox浏览器的Dom Inspector
u Internet Explorer Developer Toolbar的Dom查看
u Selenium 的IDE进行页面自动化测试
u Vs.net中的web测试,创建录制回放,事务等
4. Web服务的测试
u Vs.net进行web服务测试
u Web服务测试工具 –WebInject
u Web服务测试工具—SoapUI
u LoadRunner对web服务进行压力测试
5. 浏览器兼容性测试
u IETab,IEView (plug-in of mozila firefox)
u 使用Browsershots的服务进行浏览器兼容性测试
u 使用QTP进行浏览器兼容性测试
u 使用Selenuim进行浏览器兼容性测试
6. 。net智能设备软件测试
u TestComplete 对windows CE。Net的支持
u Windows MobileSDK提供的辅助测试工具 Hopper,FakeGPS,Cellular Emulator
u 设备模拟器(Device Emulator)在测试中的使用
u VS的Remote Tools在测试中使用,远程堆查看器,远程放大,远程监视,远程进程查看器,远程文件查看器,远程注册表编辑器
7. 数据库测试
u VS。net中进行数据库单元测试,vs2005 team edition for database professionals,vs2008内置
u 数据库比较(shcema,data)
u T-SQL测试框架,TSQLUnit,模拟XUnit,用storeprocedure模拟