当前位置:首页 > 测试笔记
? V模型诠释软件测试过程:需求功能设计(验收设计)、系统软件设计(系统测试)测
试人员不仅要了解软件是如何实现的,了解是否充分考虑非功能特性验收,还要进行评审,发现问题,考虑非功能特性的可测试性,准备测试计划,测试环境等。详细设计(特征测试)评审规格设计说明书设计功能测试用例。、编码(单元测试)一遍编码一边尽早发现错误。
W模型在V模型的基础上增加了同步进行的验证和确认工作。
W模型的三个关键点:1开发过程和测试过程是同步的
2测试过程是开发过程的阶段成果和最终产品进行验证。 TMAP测试:TEST MANERGEMANT APPROACH
(测试管理方法)是一种结构化的基于风险策略的测试方法体系。测试生命周期:计划和控制、准备、说明、执行、完成。
1准备包括测试行评审,准备技术方法;
2说明包括详细设计测试用例,建立测试的基础设施; 3执行包括与测试 测试 重新测试 检查 评估等活动; 4完成包括维护测试件 评估测试过程;
5计划和控制包括评审和研究 开发测试策略(风险分析 测试估算)建立测试组织 准备计划管理和控制;
TMAP的四大基石:
1与软件开发周期一致的测试活动周期 2坚实的组织融合 3正确的基础设施和工具 4可用的技术 ? ? ?
软件测试:测试是为发现错误而执行程序的过程。
测试心理: 证明程序中存在错误,所设计的数据就有可能发现更多的问题。
黑盒测试:有称数据驱动测试或输入|输出驱动测试,测试目标与程序的内部机制完全
无关,其 重点放在不按其规范正确运行的环境条件。测试数据完全来源于软件规范,穷举输入测试。不仅要测试所有有效的无效的事务处理,还要测试所有可能的事务处理。穷举输入测试是无法实现的。穷举路径测试可能不会暴漏敏感数据。 ? 白盒测试:允许检查程序的内部结构,对程序的逻辑结构进行检查。又称逻辑驱动测试。(遗憾的是,常常忽略了程序的规范。)
? 软件测试的原则:1测试用例中一个重要的部分是对预期输出或结果进行精确定义或描述 。
2程序员应当避免测试自己编写的程序。
3编写软件的组织不应当测试自己编写的软件。
4应当彻底检查每个测试的执行结果。
5测试用例的编写不仅应当根据有效和预料到的输入情况,还应当 根据无效和未预料到的输入情况。
6检查测试是否未做其应该做的,只是程序的一半,还要检查是否 做了其不应该做的。
7避免测试用例用后即弃,除非软件本身就是一个一次性软件。 8计划测试工作时,不应默许假定不存在错误。
9程序存在更多错误的可能性与程序已发现的错误数量成正比。 10软件测试是一项极富创造力和智力挑战性的工作。 小结:软件测试是为了发现错误而执行程序的过程。
一个好的测试用例具有较高的发现某个尚未发现的错误的可能性。 一个成功的测试用例能够发现某个尚未发现的错误。
Chapter 3
? 代码检查与走查
?
代码检查:以组为单位阅读代码,他是一系列规程和错误检查技术的集合。对代码的检查大多数都集中在规程、所要填写的表格等。一个代码检查小组通常有四个人组成,其中一人发挥着协调作用。 ? 用于代码检查的错误列表: 1数据引用错误
? 引用的变量未赋值或初始化
? 数组引用时下标是否为整数是否越界
? 通过指针或引用变量的引用,当前引用的内存单元是否分配 ? ? ?
小组代码走查 桌面检查 同行评审
性能测试结果分析流程图
结果摘要——并发数分析——响应时间——每秒钟点击数——业务成功率——系统资源——网页细分图——web服务器资源——数据库服务器 http响应摘要:
http状态代码如下: 无法解析此请求
未经授权:访问由于凭据无效被拒绝
未经授权:访问由于服务器配置倾向使用替代身份验证方法被拒绝 未经授权:访问由于ACL对所请求资源的设置被拒绝 未经授权:web服务器上安装的筛选器授权失败 未经授权:由于web服务器上的url访问策略被拒绝 禁止访问:访问被拒绝 禁止访问:客户端证书…
每秒点击数反映了客户端每秒向服务器发送的请求数
系统资源:机器的cpu,内存,网络,磁盘,cpu的使用率,内存的使用率,服务器队列长度 响应时间:服务器端响应时间、客户端响应时间、网络响应时间 点击数:客户端向web服务器发送多少次http请求 并发用户数:用来度量服务器并发容量和服务协调能力
应用服务器:web服务器、数据库应用服务器、基于javaee应用服务器
Sql语句执行的时间化为四部分:解析时间、读取时间、执行时间、其他时间 数据库服务器典型性能问题:单一类型事物响应时间过长
数据库服务器负载
糟糕的数据库设计 事物粒度过大
批任务对普通用户性能的影响 并发处理能力差
锁冲突严重:
资源锁定造成数据库事务超时 数据库死锁
数据库性能问题的一般解决方法: 1. 监视性能相关数据
2. 定位资源占用较大的事物并作出必要的优化和调整 3. 定位锁冲突,修改锁冲突严重的应用逻辑
4. 对规模较大的数据或者无法通过一般优化解决的锁冲突进行分布 Oracal与提高性能有关的特征:
? ? ? ? ? ?
索引
并行执行 簇与散列簇 分区
多线程服务器 同时读取多块数据
Oracal配置的关键参数:
? MAX_DISPACTHERS:指定了系统允许同时进行的调度进程的最大数量
? Max_shared_servers:指定了系统允许同时进行的共享服务器进程的最大数量,如
果系统中出现的人为死锁过于频繁,管理员应当适当增大这个参数值
?
PARALLEL_ADAPTIVE_MULTI_USER:参数值为TRUE时,系统将启动一个能提高使用并行执行的多用户系统性能的自适应算法啊,这个算法根据查询开始时的系统负载自动降低查询请求的并行度。
PARLELL_MIN_SERVERS:指定了实例并行执行进程的最少数量,其值就是实例启动时oracal创建的并行执行进程数。
PARLELL_THREADS_PER_CPU:指定了实例默认的并行度和并行自适应以及负载平衡算法,他指明了并行执行过程中cpu能处理的进程或线程数
PATITION_VIEW_ENABLED:指定了优化器是否使用分区视图,oracal推荐用户使用分区表而不是分区视图,分区视图只是为了oracal提供向后兼容性 REVOVERY_PARALLELISM:指定了恢复数据库系统时使用的进程数
? ? ? ?
数据库并发控制测试:
数据库并发能力:多个应用请求的并发处理过程 并发主要考虑的几个方面:
1. 数据丢失
2. 不可重复数据 3. 读取脏数据 4. 数据库的锁
驱动模块:在对底层或子层模块进行测试时所编写的调用这些模块的程序。
装模块:在对顶层或上层模块进行测试时,所编写的替代下层模块的程序。
1兼容性测试:软件在不同的硬件平台、软件平台是否可以正常运行,,即软件的可移植性,平台的兼容,网络的兼容,数据库的兼容,数据格式的兼容。兼容测试通常在clean os系统环境中测试的,配置测试通常不在clean os环境下进行测试。
2程序在windows上运行缓慢,怎么判断是程序问题还是软硬件系统问题?
答:检查系统是否有中毒的特征;软硬件的配置是否符合软件推荐的
共分享92篇相关文档