软件测试基础-概念篇1-2

软件测试基础-概念篇1-2–笔记

2-4 软件测试模型-敏捷测试

敏捷测试(Agile Testing)--遵循敏捷宣言的一种测试实践
敏捷宣言(价值观):
个体与交互 重于 过程和工具
可用的软件 重于 完备的文档
客户协作 重于 合同谈判
响应变化 重于 遵循计划
在每对比较中,后者并非全无价值,但我们更看重前者

敏捷测试的特点:
强调从客户角度进行测试
重点关注迭代测试新测试,不在强调测试阶段
尽早测试,不间断测试,具备条件即测试
强调持续反馈
预防缺陷重于发现缺陷 

敏捷测试VS传统测试
传统测试:
测试是质量的最后保护者;
严格的变更管理;
预先的计划和细节的准备;
重量级文档
各阶段测试严格的入口和出口标准;
更多在回归测试时进行重量级的自动化测试;
严格依赖流程执行;
测试团队和开发团队是相对独立的

敏捷测试:
开发和测试人员是紧密合作,大家都有责任对软件负责;
变更是可接受的,拥抱变更;
计划随着进展时常调整;
只需要绝对必要的文档;
各迭代之间已经没有明显的入口和出口标准;
所有阶段都需要自动测试,每个人都需要做,是项目集成的一部分;
流程不再需要严格执行;
团队合作是无缝隙合作;

3-1软件测试类型

按测试类型来分
功能测试、性能测试、部署测试、文档测试、安全测试、兼容性测试、易用性测试、本地化测试、无障碍测试、可靠性测试
功能测试:根据产品特性、操作描述金额用户方案,测试一个产品的特性和可操作行为以确定它们满足设计需求。
针对的问题:功能错误或遗漏、界面问题、性能错误、数据及访问错误、初始化及终止错误
功能测试工具:
商用:QTP(基于关键字,web应用)winrunner(桌面端的软件)、silkTest、Rational robot
开源:selenium(敏捷开发)、Watir(web应用)、Sikuli(基于屏幕截图)

3-2 软件测试类型 性能测试

负载测试:在测试过程中,逐步的增加负载,来观察系统的表现,最终确定出系统在正常的指标范围下的最大负载。
压力测试:测试系统在极限情况下的压力情况,最终系统字什么样的压力环境下会导致失效,不能正常运行,确定出我们这个系统所能承受的最大极限。
稳定性测试:一般是以稍大于正常业务量的负载进行持续的、长时间的测试,比如:24*5,连续5天的对这个系统进行24小时的施加压力,以确定系统在较长时间的运行情况下,我们这个系统地稳定性情况。
性能指标:
并发用户数VU,同时访问系统的用户数量;
每秒事务数TPS,每秒系统处理业务的数量;
系统响应时间;
设备性能,CPU等
性能测试工具:LoadRunner ,Silkperformer , Jmeter(java开源的有效的测试工具) ,WebLoad , Apache Bench, LoadUI(专门针对http接口的性能测试)
静态性能评估:开发Web应用时,基于一系列Web应用页面性能的最佳实践队Web应用的页面进行静态分析,并给出评估结果的性能分析方法。
评估的标准/工具(YSlow,PageSpeed)
下面博主以chrome浏览器为例,演示了这两个插件。
应用性能管理(APM):
提供对系统的实时监控以实现性能管理、故障管理的解决方案。
下面博主演示了听云公司的官网上的产品——听云server的使用。

3-3 安全测试

安全测试:对软件产品进行测试以保证其符合产品安全需求和质量标准
渗透测试:通过模拟对软件系统的恶意攻击行为来评估系统安全性的一种测试
OWASP:Open Web Application Security Project 开放网络应用安全项目
下面博主演示了访问OWASP官网
OWASP Top Ten Project 2013
1.Injection 注入脚本漏洞使用户访问到不该访问的数据的目的
2.Broken Authentication and Session Management 失效的身份认证和会话管理 会话劫持漏洞
3.Cross—Site Scripting(XSS)跨站脚本
4.Insecure Direct Object References 不安全的对象直接引用 参数的保护
5.Security Misconfiguration 安全配置类错误
6.Sensitive Data Exposure 敏感信息泄露 信息传递没有对关键信息进行加密
7.Missing Function Level Access Control 功能级别访问控制缺失 比如访问网站可以访问到用户没有权限到达的地方
8.Cross-Site Function Level Access Control(CSRF) 跨站请求伪造 
9.Using Components with Known Vulnerabilities 使用了已知有漏洞的组件 
10.Unvalidated Redirects adn Forwards 未被验证的重定向和转发 (钓鱼网站)
安全测试工具各种针对的点:
Appscan,Webinspect,W3AF:web应用
Nessus:服务器,主机
Nmap:端口开放
MetaSploit:攻击软件,渗透测试
WebScarab:代理劫持
Fortify:针对白盒,源码中的安全问题

3-4 兼容性测试

兼容性测试:
(1)软件本身的兼容性:如软件升级,以前版本的功能也能使用
(2)不同平台下的兼容性:如在Linux系统下的ubuntu、openSUSE等,进行平台的兼容性测试
(3)对不同的设备的兼容性:如32位、64位、如小型机、PC等
(4)软件的互操作性:如和一些主流应用的兼容性

3-5软件测试类型-文档测试

文档测试
文档测试:针对软件产品的交付品,配套的文档类部件的测试。如用户手册,使用说明、用户帮助文档等。
文档测试关注要点:完整性、正确性、一致性、易理解性、易浏览性
可靠性测试:软件的可靠性和硬件的可靠性
易用性测试:测试用户使用软件时是否感觉方便,是否能保证用户体验的测试类型
本地化测试:针对软件的本地化版本实施的针对性测试
本地化主要测试内容:
1.语言,书写习惯
2.时区。日期格式、货币
3.当地风俗、法律法规
4.政治敏感内容
部署测试:也称安装测试,主要验证系统部署过程,并确保软件经过安装测试后可以正常使用
部署测试的主要测试内容:
1.在不同环境下的部署验证
2.参照部署文档执行,过程的合理、正确性
3.基础数据
无障碍性测试:也称可访问性测试,指软件需要提供便于特殊人群使用的功能,包括视障、听障、老年人、身体残疾用户等,无障碍测试则是针对这部分功能的测试。

4-1其他测试分类

回归测试
软件功能修改后,对软件进行重新测试以确认修改没有引入新的错误或导致其他部分产生错误。回归测试的重心在关键模块和重点功能组件。软件研发周期中会进行多次回归测试,且尽量实现自动化。
Monkey测试
Monkey测试,也称搞怪测试。就是用一些随机、稀奇古怪的方式来操作软件,以测试系统的健壮性和稳定性。
冒烟测试
来自于硬件板卡验证术语。软件上则用于确认代码中的更改会按预期运行,且不会破坏整个版本的稳定性。与回归测试有些相似,但冒烟测试更对的是针对全流程的关键业务流程的验证,而回归测试重点在关键模块、关键功能。
“每日构建”中用冒烟测试来确认合入的代码没有影响主要功能的正常使用。
A/B测试
多用于互联网行业,通过为页面提供2个版本给用户使用并记录相关的用户行为数据,来确定更优化设计的一种测试方案。
A/B测试实施要点
多个方案并行,保证统计结果的有效性
每次测试仅改动一个变量,能更加确定用户的选择差异
按照某种规则进行优胜劣汰
A/B测试工具
Google Andlytics Content Experiments 主要通过向用户提供不同页面的版本之后,通过嵌入我们的分析脚本,就可以收集到一系列分析数据。
Visual Website Optimizer

回归总结
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值