初级软件测试总结

1.测试用例编写

1.1 设计测试用例的依据

根据需求文档,项目设计文档,接口文档,系统使用手册等来设计测试用例。 重点是要理清项目的流程,核心模块,实现的主要功能。 还应该在开发过程与测试过程之间建立起一对一的联系。 一般的软件测试生命周期: 需求分析-用例设计-脚本开发-测试执行-结果分析 但在实际测试过程中,会根据项目的周期来调整测试的时间。

1.2最常接触的基础测试类别

1.2.1模块测试 - 模块测试的目的是发现程序模块与其接口规格说明之间的不一。

1.2.2功能测试

功能测试的目的是为了证明程序未能符合其外部规格说明。

1.2.3系统测试

系统测试的目的是为了证明软件产品与其初始目标不一致。

1.2.4敏捷测试

敏捷测试:敏捷测试是遵循敏捷宣言的一种测试实践: ①强调从客户的角度,即从使用系统的用户角度,来测试系统。 ②重点关注持续迭代地测试新开发的功能,而不再强调传统测试过程中严格的测试阶段。 ③建议尽早开始测试,一旦系统某个层面可测,比如提供了模块功能,就要开始模块层面的单元测试,同时随着测试深入,持续进行回归测试保证之前测试过内容的正确性。

当然还有一些细分的测试类别:

1、功能测试:确保程序的目标功能实现。

2、容量测试: 发现处理大容量数据时的程序异常 。

3、强度测试: 发现在大规模负载、高强度不间断持续的数据处理中的异常。

4、可用性测试: 评估最终用户在使用软件并与软件交互时的可用性问题。

5、安全性测试: 试图攻破程序的安全防线。

6、性能测试: 评估程序的响应时间以及吞吐量瓶颈。

7、存储测试: 确保程序可以正确处理其对存储的需求,包括系统的存储和物理上的存储。

8、配置测试: 检查程序是否能在推荐配置上流畅运行。

9、兼容性/转换测试: 评估新版本是否能兼容老的版本。

10、安装测试: 确保能够在所有支持的平台上安装软件。

11、可靠性测试: 评估程序能否达到规格说明中的运行时长和MTBF(平均故障间隔时间)要求。

12、可恢复性测试: 测试系统恢复相关的功能是否按设计要求实现。

13、服务/可维护性测试: 评估系统是否拥有良好的数据处理和日志机制,以备技术支持和调试之需。

14、文档测试: 检验所有的用户文档是否准确。

15、过程测试:确保接口的流通性

1.3测试用例设计方法

1.3.1功能测试用例设计 针对系统或模块常用的两大设计方法

- 基于用户场景 - 基于功能点 一般用户场景和功能点设计是结合使用的。 其中针对每个功能或者模块设计时还要结合使用黑盒测试的方法:

-- 等价类划分

--边界值分析(五点法,七点法)

--因果图分析(输入条件组合对功能有影响的情况)

--错误推测法

在设计测试用例时要保证测试用例的覆盖率和简洁高效。 测试用例不是越多越好。 能发现缺陷的用例才是好用例! 1.3.2接口测试用例设计 通常,设计接口测试用例需要考虑以下几个方面:

是否满足前提条件

有些接口需要满足前置条件,才可成功获取数据。常见的,需要登陆Token。

逆向用例:

针对是否满足前置条件(假设为n个条件),设计0~n条用例

是否携带默认值参数

正向用例:

带默认值的参数都不填写、不传参,必填参数都填写正确且存在的“常规”值,其它不填写,设计1条用例;

业务规则、功能需求

这里根据实际情况,结合接口参数说明,可能需要设计n条正向用例和逆向用例

参数是否必填

正向用例:

设计1条只传必填参数的测试用例。

设计1条必填参数、可选参数都传的测试用例。

逆向用例:

针对每个必填参数,都设计1条参数值为空的逆向用例

参数之间是否存在关联

有些参数彼此之间存在相互制约的关系

逆向用例:

根据实际情况,可能需要设计0~n条用例

参数数据类型限制

逆向用例: 针对每个参数都设计1条参数值类型不符的逆向用例

参数数据类型自身的数据范围值限制

正向用例:

针对所有参数,设计1条每个参数的参数值在数据范围内为最大值的正向用例

逆向用例:

针对每个参数(假设n个),设计n条每个参数的参数值都超出数据范围最大值的逆向用例

针对每个参数(假设n个),设计n条每个参数的参数值都小于数据范围最小值的逆向用例

总结 :以上几个方面考虑全的话,基本可以做到如下几个方面的覆盖:

主流程测试用例:正常的主流程功能校验;

分支流测试用例:正常的分支流功能校验;

异常流测试用例:异常容错校验。

具体设计方法还是根据接口文档具体分析,适当地减少冗余测试用例,但也要做到全面,尽可能覆盖后台的逻辑代码。 设计web接口测试用例就是模拟不同的参数去覆盖更多的代码逻辑,尽量把web接口的每一种返回结果都测到。 重点是理解接口测试概念,接口的请求协议http,https,请求方法get,put等,响应状态码,请求/返回数据格式:xml,json等。

2.测试工具

2.1 excel测试用例表格写测试用例

2.2 postman接口测试工具

测试写好的每一条接口测试用例,分析返回结果。 只能一条一条写接口请求,不过还是比较常用和方便的。

2.3 chrome浏览器的开发者工具f12打开。

常用到的工具栏elements,console,sources,network(最常用)。 一般要观察network的XHR(前端写的请求),可以定位前后端报错具体是前端报错还后端报错。 XHR的每一条请求要看请求信息,响应信息,timing(Waiting(TTFB),Content Download:性能方面) elements:styles样式栏可以调页面样式,UI测试可能会用到。

2.4 java的junit测试框架

目前接口自动化是最容易实现和维护的,所以初级阶段也要掌握一种测试框架实现接口测试的自动化。 java软件推荐:IDEA(智能提示比eclipse好)

2.5 git和github代码管理工具

写测试脚本时可以通过git进行本地代码管理,不需要联网,便于修改,维护,合并,同步,也可以上传到github上进行代码托管,但免费上传的是公开的,可以被人查看和下载,付费的才是私密的,不允许被外人查看。

2.6 tower文档管理

项目管理,文档管理,任务发布等,是一个在线的办公协作工具。

2.7其他测试工具

以下推荐的工具是目前测试人员常用的主流工具,初级一般用不到几个,中高级用的多。

接口测试工具:HttpRequester,postman等。

接口自动化测试工具:JMeter,Robot Framework,soapUI等。

接口性能测试工具:主要是用于测试接口的性能测试,验证接口处理并发的能力,如JMeter,LoadRunner,soapUI等工具。

UI自动化测试:selenium,Katalon Recorder(可以录制界面脚本)。

QTP是一个侧重于功能的回归自动化测试工具。

抓包工具:Fiddler,wireshark(比较专业) Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie,html,js,css等文件)。 Fiddler 要比其他的网络调试器要更加简单,因为它不仅仅暴露http通讯还提供了一个用户友好的格式。常用来抓app包。

3、数据库

了解数据库是必要的,测试过程中会进行数据库校验,看数据有没有写入或更改,这时候就要用到数据库的数据操作:增删改查等。 数据库软件推荐:DataGrip

原文地址:https://www.cnblogs.com/huile11/p/12526465.html

时间: 2024-10-15 18:14:42

初级软件测试总结的相关文章

软件测试-5 软件测试总结

一.概述 软件测试的开始与软件开发生命周期的开始是同时的,即软件测试伴随着整个软件开发生命周期.在软件开发的生命周期中,我们可能用到各种软件测试的方法,而且现在软件测试的工具和方法非常多,现在回想起来可能已经十分混乱,所以我希望能从新整理一遍软件测试的方法: 二.软件测试方法 2.1 黑盒/白盒 刚学软件测试就学的是这个,把软件测试分为两类: 测试名称 描述 黑盒测试 Black Box 把软件看做一个黑盒,不清楚里面的结构,从功能上做测试 白盒测试 white Box 已知软件内部的结构,根据

软件测试总结

测试根据软件开发的阶段可以分成很多种,比如单元测试,集成测试,系统和确认测试等等,测试过程中根据方法可以分为白盒测试和黑盒测试等.那么它们分别运用于哪些阶段呢?测试所针对的目的是什么呢? 1.测试目的 目的:尽可能少的时间和人力发现软件产品中尽可能多的错误 测试用例:测试数据和预期结果构成的 如何衡量一个测试用例? 发现迄今未发现的错误 2.测试步骤 1.制定测试计划 2.编制测试大纲 3.根据测试大纲设计生成测试用例 4.实施测试 5.生成测试报告 3.测试原则 4.测试分类 根据测试的阶段可

[软件测试总结] 图解软件测试

软件测试课程接近尾声!通过这个课学了不少软件测试的有关知识. 结合老师上课的思路,于是总结如下: 软件测试概念图:

《构建之法》---软件工程师的成长&两人合作

本周学习了<构建之法>第三.四章的内容. PSP对软件开发的工作质量的衡量简单指标为:项目/任务有多大.花多少时间.质量如何.是否按时交付共4个因素.而要成为一名合格的软件工程师,要对上述4个因素尽量在用户需求上做到尽善尽美. 软件工程师的职业发展有: 职业发展---考级之路 计算机等级考试 (http://sk.neea.edu.cn/jsjdj/index.jsp) 全国计算机技术与软件专业技术资格考试 (http://www.rkb.gov.cn/  ) 职业成长---Steve McC

读构建之法 第三章:软件工程师的成长

本章理论和知识点:评价软件工程师水平的主要方法 软件工程把相关的技术和过程统一到一个体系中,叫"软件开发流程",软件开发流程的目的是为了提高软件开发.运营.维护的效率,以及提升用户满意度.软件的可靠性和可维护性. 软件开发流程不光指团队的流程,还包括个人开发流程,因为软件团队是由个人组成的.个人在团队中也有独立的流程.把每个人的工作有序地组织起来,就是团队的流程."有序",并不是"无争论".在大部分成功的软件团队模型中,各个角色有不同意见的冲突在

软件工程师的成长(构建之法)

上班的时候,高级的软件工程师其实和普通的软件工程师一样坐在电脑前敲敲打打,查下邮件,上会网,看看手机,聊会天.但是两者的区别就在下班的时候,高级工程师下班回家,而新入职的工程师还在电脑前奋斗. 软件开发不仅有团队的流程,还对每个成员有独立的要求.软件团队是由个人组成的,团队开发的大流程中是每一个人在做具体的开发测试用户界面设计管理交流等工作.个人在团队中也有独立的工作流程.但是个人的工作要用什么来评判呢,用上班时间?那是不是经常加时的同志能够赢得头筹? 初级软件工程师要成长要先积累开发相关的知识

第三章 软件工程师的成长

3.1 个人能力的衡量与发展 软件开发流程不光指团队的流程,还包括个人开发流程,因为软件团队是由个人组成的.在团队的大流程中,是每个具体的个人在做开发.测试.用户界面设计.管理.交流等工作.因此个人在团队中也有独立的流程. 以开发人员为例,流程如下: *通过交流.实验.快速原型等方法,理解问题.需求或任务 *提出多种解决办法并估计工作量 *其中包括寻找以前的解决方案,因为很多工作是重复性的 *与相关角色交流解决问题的提案,决定一个可行的方案 *执行,把想法变成实际中能工作的代码,同时验证方案的可

《构建之法—现代软件工程》读书笔记之 — 软件工程师的成长

只有对软件工程有更清晰的了解,才能知道努力的方向,才能成为一个合格的软件工程师,邹欣老师用这一节的内容带我们走近软件工程师的世界.那么,一个合格的软件工程师到底是怎样的标准,为了达到标准,又需要我们怎样做呢? 首先,我们应该了解软件工程到底包括了什么? 软件工程包括了开发.运营.维护软件过程中的很多技术.做法.习惯和思想.软件工程把这些相关的技术和过程统一到一个体系中,叫"软件开发流程",软件开发流程的目的是为了提高软件开发.运营.维护的效率,以及提升用户的满意度.软件的可靠性和可维护

软件测试方法和技术实践(学习笔记)

网易云课堂:软件测试方法和技术实践 只做了第一节的笔记,后面几节貌似没什么重点... Q:什么是软件测试? A:G.J.Myers:测试是为证明程序有错,通过运行程序发现其中存在的问题. Q:软件测试的对象仅仅是程序么? A:软件=程序+数据+文档 软件包含组件模块.UI. 数据库.系统 Q:什么是全过程的软件测试? A:全过程软件测试包括 [需求审评:需求缺陷   设计审评:设计缺陷  单元与集成测试:代码和接口缺陷 系统测试:系统缺陷    验收测试:其他各种缺陷] Q:发现错误还是发现缺陷