当前位置: 首页 > news >正文

软件测试的基础入门(一)

文章目录

  • 一、什么是软件测试?
    • (1)生活中的测试案例
    • (2)代码中的测试示例
    • (3)软件测试的定义
  • 二、软件测试的重要性
  • 三、测试工程师
    • (1)定义
    • (2)分类
    • (3)工作内容
      • 软件测试开发工程师
      • 测试工程师
      • 软件测试开发工程师和测试工程师的区别
  • 四、软件调试和软件测试的区别
    • (1)从角色上分析
    • (2)从目的上分析
    • (3)从阶段上分析
  • 五、需求
    • (1)分类
    • (2)定义
      • 用户需求
      • 软件需求
    • (3)生活中的需求案例
      • 用户需求
      • 软件需求
    • (4)软件测试中的软件需求示例
      • 用户需求
      • 软件需求
  • END


一、什么是软件测试?

(1)生活中的测试案例

测试就发生在我们的日常生活中,如我们在手机APP上面进行购物时,
通常是:

  • 1、打开某款购物软件;
  • 2、搜索你要购买的商品;
  • 3、查看商品详情页;
  • 4、查看商品的规格和评价;
  • 5、查看价格是否符合预期;
  • 6、点击下单。

(2)代码中的测试示例

同样地,对于我们程序员写出的代码,也要进行测试,那我们程序员中的测试是什么呢?

一个简易的C语言实现的除法:

int Div(int num1, int num2)
{
	ret = num1 / num2;
	return (num1 / num2);
}

测试代码逻辑是否符合预期:

num1 = 1, num2 = 1, 返回的ret是否等于 1
num1 = 0, num2 = 2, 返回的ret是否等于 0
当 除数即 num2为0时,
程序就会出现报错,因此我们的测试就显得非常有用了;


(3)软件测试的定义

软件测试 就是验证产品的特性(如:功能、性能、界面、易用性等)是否满足用户的需求。

二、软件测试的重要性

有了上面测试的定义后,我们知道测试就是要让用户对程序员开发出来的产品 体验感和舒适度更好。
所以我们可以总结下测试的重要性:

  • 1、保证软件的质量
  • 2、提高用户的体验感和满意度

三、测试工程师

(1)定义

测试工程师 是指从事测试相关工作的人员。

(2)分类

不同的企业单位对测试人员的命名不同,主要有如下两种:

  • 1、软件测试开发工程师
  • 2、测试工程师

(3)工作内容

软件测试开发工程师

工作重点是业务测试,其次是开发测试效率工具(自动化、性能测试等)。

测试工程师

工作重点是业务测试。

软件测试开发工程师和测试工程师的区别

相同点:

1、都是测试人员;
2、要对软件的质量负责,保证软件的质量。

不同点:

测试开发比测试多了 开发 二字,这个 “开发” 是指开发测试效率工具,如:自动化、性能测试等就属于效率工具。

四、软件调试和软件测试的区别

(1)从角色上分析

软件调试:

主要是开发人员进行操作。

软件测试:

主要是开发人员和测试人员一起完成;
黑盒测试主要由测试人员完成、单元/集成测试主要是由开发人员执行。

(2)从目的上分析

软件调试:

目的是在调试中发现问题(bug),并解决问题。

软件测试:

目的是发现程序中存在的缺陷。

(3)从阶段上分析

软件调试:

是在开发阶段。

软件测试:

贯穿整个软件开发的生命周期。

五、需求

(1)分类

  • 1、用户需求;
  • 2、软件需求。

(2)定义

用户需求

通常是一段话,如:开发一款地图软件;
用户需求是没有经过合理的评估。

软件需求

也叫功能需求,会详细描述开发人员必须实现的软件功能,是开发人员和测试人员执行工作的依据。

(3)生活中的需求案例

天气好冷,我要买件衣服。

用户需求

就是简单的一句话:天气好冷,我要买件衣服。

软件需求

需要根据用户需求,进行具体的分析,给出合理的解决方案。
如:上面的用户需求:天气好冷,我要买件衣服。
是买穿里面的?还是穿外面的?
买什么尺码?买什么颜色的?
……

(4)软件测试中的软件需求示例

用户需求

实现一个邮箱注册网站


软件需求

如下图:


注意:

用户的需求不能直接作为开发和测试的依据。
针对用户的需求,产品经理需要进行需求分析 (技术可行性、市场可行性、成本投入和收益占比等)后才可转变为软件需求。


END

每天都在学习的路上!
On The Way Of Learning

相关文章:

  • 一文详解U盘启动UEFI/Legacy方式以及GPT/MBR关系
  • 11、集合框架
  • HOW - 个人创业(融资篇)
  • 如何安装vm 和centos
  • python目录
  • db.session.delete是什么意思
  • 10分钟熟练掌握宝兰德中间件部署 iServer
  • 【数据结构第十六节】实现链式结构二叉树(详细递归图解—呕心沥血版!)
  • 嵌入式科普(32)指向寄存器的指针变量2---可变指针
  • 世优科技国内首家 MR 体验店开业,打造 MAS 任意门奇幻之旅
  • 基于PSO-LSTM长短期记忆神经网络的多分类预测【MATLAB】
  • IO进程 day05
  • MobileNet 改进:添加SpatialGroupEnhance 增加语义特征学习能力
  • STM32-智能小车项目
  • Python的PyTorch+CNN深度学习技术在人脸识别项目中的应用
  • #5【CVPR2024】PLACE:自适应布局语义融合
  • 强化学习笔记(一)
  • 数据同步的中间件
  • tailwindcss 前端 css 框架 无需写css 快速构建页面
  • 关于网关和ip地址怎么理解?
  • b2b电子商务网站的收益模式不包括/百度搜一下
  • 建设网站多少钱/简述网络营销的概念
  • python做爬虫和做网站/站长工具app下载
  • 给别人做时时彩网站违法不/互联网公司网站模板
  • 漳州建网站/seo推广收费标准
  • 北京好的做网站公司/百度网盘登录入口