一、软件测试工程师须知

良好的沟通和表达能力
具有怀疑与破坏的精神
扎实的软件测试基础知识
缜密的业务逻辑分析能力
处在用户的角度进行换位思考
足够的耐心、细心、信心、责任心
积极乐观向上的心态和团队协作能力
要有严谨、敢于承担责任、稳重的做事风格
善于自我总结、自我督促和不断学习的能力

二、软件测试职业规划 & 转职

产品总监(ProductOwner)

项目经理(ProjectManager) / 技术经理(Technical Manager)
QA (Quality Assurance)或者法律法规部门
测试开发(TestingDeveloper)
(领域)业务专家(BusinessExpert )

手工测试(Manual testing)唯一和最后的出路,但此路其实很光明

销售(Sales)
售后技术支持(TechnicalSupport Engineer)
运营(Operation)
培训师/教练(Coach)

测试的内容:

B/S架构的Web测试,如各种网站(Website)
APP的测试,iOS,安卓,在手机上或在iPad上
C/S架构的软件测试,多为桌面应用程序(Application)
手机测试(MobilePhone)

嵌入式软件测试(测试硬件设备里的软件功能

游戏测试
搜索引擎测试
本地化测试
AI测试?

区块链测试

不同的需求类型(Requirement)
用户需求(UserRequirement)
开发需求规格说明书(DEV Requirement Specification)
测试需求(TestingRequirement)

测试需求收集

客户、产品线经理(ProductLine Manager,PLM)、项目开发经理或负责人

需求的显性和隐性

显性:明确规定的功能与特性
隐性:没有被明确规定但是有可能或应该拥有的功能与特性,例如:娱乐圈的潜规则,汽车必须要有轮胎且必须是四个轮胎,飞机必须要会飞等一切约定俗成的东西

软件测试类型以阶段划分

单元测试(Unit Test):单元就是人为规定的最小的被测功能模块。一般是开发做的,测试一般也就做代码插桩。
集成测试(Integration Test):开发好的模块之间的集成第三方接口集成设备集成(医疗行业见多)
系统测试(System Test):所有模块开发完毕后,打包给测试做的测试,我们大多数时间做的其实都是系统测试,玩法极多
验收测试(Verification Test):冒烟测试(Smoke Test)、 回归测试(Regression Test)、自由测试或叫作随机测试(Free Test)
Alpha测试与Beta测试:Alpha测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试,但不能由程序员或测试员完成。  Beta测试是在一个或多个或大量用户的实际使用环境下进行的测试,但不能由任何公司内部人员完成。
A/B测试:主要是为Web网站或App软件制作两个(A/B)或多个(A/B/n)版本,在同一时间维度开放给终端使用的用户。这些版本用来收集各种用户体验数据和业务数据,最后分析评估出最好版本来正式采用。
测试基类

自动化测试(泛指功能)

性能测试

安全性测试

泛指Web网站方面、医疗行业、汽车行业等、区块链?去中心化后能否安全

Web安全性测试定义:建立整体的威胁模型,测试溢出漏洞、信息泄漏、错误处理、SQL 注入、身份验证和授权错误。

静态测试

指测试不运行的部分——只是检查和审核。开发人员方面如:代码走查,代码Review,代码比较等;测试人员方面如:界面美观度“鉴赏”,测试文档检查,测试程序翻译问题的本地化测试(也算是一种静态测试类型吧)等

动态测试

指通常意义上的软件测试,使用和运行软件、网站、APP等,就是我们常讲的“点点点”。
软件测试用例

测试用例设计方法

一、等价类划分法

1、避免冗余

2、测试其中一个最具有代表性的值就能代表这一类的其他任何值,即:将无穷尽的测试数据进行合理分类

3、等价类划分只适用于黑盒测试

4、等价类的基类永远只有两种:有效等价类和无效等价类。PS:有效等价类就是指对于程序的需求规格说明来说是合理的,有意义的输入数据构成的集合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。

举例: 对电话专员的评分,范围是0~10之间,低于6分可能被炒鱿鱼

有效等价类:0<=Point<=10、 无效等价类:Point<0或者Point>10

二、边界值分析法

边界值分析法就是对输入项的边界值进行测试的一种黑盒测试方法,是作为对等价类划分法的补充,基本就是绑定使用的。

因果图法

1或0(默认表达方式,Default)

1代表真   0代表假

Y或N

Y=Yes代表真  N=No代表假

T或F

T=True代表真  F=False代表假

4种原因与结果的关系

4种原因与原因的约束

E约束(排他性约束、Exclusive):C1和C2中最多有一个可能为1,即C1和C2不能同时为1

I约束(包含性约束, Inclusive):: C1、C2、C3中至少有一个必须是1,即: C1、C2、C3不能同时为0

O约束(唯一性约束, Only):C1和C2必须有一个且仅有一个为1

R约束(必要性约束, Request):: C1是1时,C2必须是1

M约束(强制约束,Masking)::唯一的针对结果的约束;若结果E1是1,则结果E2强制为0

判定表法Decision Table Method:

判定表是分析和表达多种输入条件下系统执行不同动作的工具,它可以把复杂的逻辑关系和多种条件组合的情况表达得既准确又明确。

一般情况下,我们在画出因果图后写出判定表,两者绑定使用。但是无论是因果图法也好,判定表法也好,它们两者都是可以单独使用的。

根据个人喜好,熟练了以后,可以考虑直接使用判定表法,省去画图步骤(Normally)。

因果图+判定表的经验结论

判定表法的优点:

1、充分考虑了输入条件间的组合,对组合情况覆盖充分;

2、最终每个用例覆盖多种输入情况,有利于提高测试效率;

3、设计过程中,对输入条件间的约束关系做了考虑,避免了无效用例,用例的有效性高;

4、能同时得出每个测试项的预期输出。

判定表法的缺点:

1、当被测试特性输入较多时,会造成判定表规格过于庞大;

2、输入之间的约束条件不能有效区分输入是否确实需要进行组合测试,会造成不需要组合测试的输入做了组合,从而产生用例冗余。

场景法

软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流

现在的场景法就是测试用例设计脑图,人称XMind

错误推测法

任何有意义的错误推测都值得单独写一条测试用例,一般情况下,推测开发需求中没有明确指明的,错误推测法很随意,就是个头脑风暴

软件测试基础知识整理相关推荐

  1. 软件测试基础知识整理,都给你准备好了

    目录 1.软件测试基本概念 2.软件测试分类 3.测试工程师 4.软件测试工具简介 1.软件测试基本概念 1.软件=程序+文档,软件测试=程序测试+文档测试. "程序"是指能够实现 ...

  2. 软件测试基础知识整理(适用于面试)

    1.软件测试的原则 一:测试标准建立在用户需求之上 二:当质量和时间冲突时,质量放在首位 三:需求分析阶段就应该定义好产品的质量 四:测试用例不是写出来的,是设计出来的 五:测试计划是测试工作的前提 ...

  3. 我敢打赌你一定不知道的软件测试基础知识整理

    目录 1.什么是测试覆盖率吗? 2.提交的缺陷包含什么内容? 3.你们的测试流程是怎样的? 4.你写过测试计划么,包含什么内容 5.如何设计登录模块的测试用例? 6.总结 7.重点:配套学习资料和视频 ...

  4. 软件测试基础知识整理(详细版)收藏这篇足矣

    一.认识软件测试 1.1 什么是软件测试? 使用技术手段验证软件是否满足需求 1.2 软件测试的目的 目的:用较少的人力.物力.和财力,找到软件中存在的问题并修复,降低商业风险 二.常见的测试分类 2 ...

  5. 全网最全的软件测试基础知识整理(新手入门必学)

    目录 1.什么是软件 2.软件工程的内容 3.软件的生命周期 4.什么是软件测试 5.软件测试的方法 6.软件测试阶段有哪些任务 7.测试的原则 8.软件测试工作流程图 9.自动化测试 10.自动化测 ...

  6. python常用变量名_python基础知识整理

    Python Python开发 Python语言 python基础知识整理 序言:本文简单介绍python基础知识的一些重要知识点,用于总结复习,每个知识点的具体用法会在后面的博客中一一补充程序: 一 ...

  7. 软件工程与软件测试基础知识_这是我在软件工程工作九个月中学到的知识

    软件工程与软件测试基础知识 I've been working for about nine months at Dexter as a software developer. I wrote a b ...

  8. 计算机二级c语基础知识,计算机二级C语基础知识整理.doc

    计算机二级C语基础知识整理 1.1 算法 算法:是一组有穷指令集,是解题方案的准确而完整的描述.通俗地说,算法就是计算机解题的过程.算法不等于程序,也不等于计算方法,程序的编制不可能优于算法的设计. ...

  9. 使用Aspose.Cells的基础知识整理

    使用Aspose.Cells的基础知识整理 转自 http://www.cnblogs.com/kenblove/archive/2009/01/07/1371104.html 这两天用Aspose. ...

  10. 前端基础知识整理汇总(中)

    前端基础知识整理汇总(中) Call, bind, apply实现 // call Function.prototype.myCall = function (context) {context = ...

最新文章

  1. 量子计算陷入难解困境,未来发展何去何从?
  2. linux下杀死进程(kill)的N种方法
  3. boost::iostreams::gzip用法的测试程序
  4. 使用C和汇编实现一个加法操作
  5. AD:使用C#批量创建帐号
  6. [译]第三章:什么是组织结构
  7. 爬取今日头条财经版块新闻
  8. dubboSPI机制浅谈
  9. CSS:媒体查询 CSS3 Media Queries
  10. 自制安装包集成.net framework 4.0
  11. 如何提高代码复用性,定义骨架?
  12. 袖珍计算机英语手册,英语袖珍迷你系列-中考英语速记手册.pdf
  13. 串口转WIFI模块通信
  14. RK987A键盘说明书(自用)
  15. python字典的key提取_python 字典操作提取key,value
  16. Openfile安装和使用
  17. 客户端性能自动化-亲自实践遇到的问题
  18. NoSQL 数据库和传统关系型数据库到底有什么区别?
  19. 了解ES6 The Dope Way第五部分:类,转译ES6代码和更多资源!
  20. 工厂模式简介-作用和好处

热门文章

  1. 乐高ev3编程 c语言,乐高ev3编程软件下载-乐高EV3机器人编程软件lego mindstorms ev31.0 官方版 - 极光下载站...
  2. 分布评价指标分析(切比雪夫距离,KL距离,余弦相似度,平方差和, 巴氏系数)python代码
  3. 基于ssm的航空订票系统
  4. 实时公交api接口-车来了公交接口-API公交接口 -如何接入
  5. Mac下如何修改IDEA的背景颜色
  6. QQ机器人:群成员自我禁言管理【最新beta2版本】
  7. 年鉴表格-数据可视化分析
  8. 第一、二章 引论、算法分析
  9. 声网3D空间音频技术解析:3D空间音效+空气衰减模拟+人声模糊
  10. python数据分析和数据可视化总结