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

1.软件测试

目录

一、面试重点

1.什么是软件测试?

2.软件测试和软件开发的区别

3.你为什么选择软件测试?

4.什么是需求?

5.软件测试人员如何深入了解需求?

6.什么是内存泄露?

7.什么是测试用例?

8.测试用例有什么优点?

9.什么是软件错误(bug)?

二、开发模型(5个)

1.瀑布模型

2.螺旋模型

3.增量模型      迭代模型

4.敏捷模型:

5.测试模型


一、面试重点

1.什么是软件测试?

软件测试人员验证软件是否满足用户的需求。

软件测试的阶段:整个软件开发的生命周期。在需求阶段,就需要介入了,验证需求的合理性和正确性。

2.软件测试和软件开发的区别

开发:广度小,专业度高

测试:所需技能比较广泛,但是专业度低

目的:

测试人员确保程序实现了它应该实现的功能(用户需求)

软件开发人员确保程序做了他想让程序实现的功能

角色:

测试:由测试人员和开发人员共同完成

开发:开发人员完成

阶段:

软件测试贯穿了整个软件开发的生命周期

软件开发仅在开发阶段

3.你为什么选择软件测试?

综合能力:沟通、学习、开发、文字

自动化测试技术

编写测试用例的能力

兴趣、责任感

因为我对软件测试非常感兴趣,我在业余时间学习了相关的开发语言和知识(Java、JDBC、网络),学这些都是为了我做好软件测试做准备的。我还完成了自己项目的测试用例

4.什么是需求?

用户的期望和满足合同(文档、规则、标准)的规定所需要的条件和权限。

用户需求和软件需求。软件需求是用户需求的细化,是用户需求的具体实现细节和规范。

用户需求比较粗略,直接实现比较困难。因为没有细节,所以需要软件需求把用户需求细节化和实现,把用户需求变成一个具体的可实现的过程文档。

5.软件测试人员如何深入了解需求?

站在用户的角度,从需求分析阶段就开始介入了解需求。

6.什么是内存泄露?

使用资源,执行一些操作时,资源没有及时释放,导致资源被占有的越来越多,电脑就越来越卡,直到没有资源可以使用。

7.什么是测试用例?

测试用例就是向被测系统发起的一组集合,包含测试环境,测试数据,预期结果(重要性、优先级、操作方式、标题等)


例:用正确(已注册)的手机号和密码登陆网易邮箱界面,登陆成功

19916691739     11223344

测试用例:

       测试环境:Chorme 版本99.0.4844.51 PC端  Windows系统

       测试数据:用户名:19916691739   密码:11223344

       测试步骤:1.打开邮箱的URL:https://mail.163.com/?mas=authfail#return

                         2.输入用户名和密码

                         3.点击登陆

      预期结果:登录成功


8.测试用例有什么优点?

衡量需求的覆盖率,有一定的复用性、借鉴意义;可以用于回归测试,防止遗漏测试需求

9.什么是软件错误(bug)?

当且仅当,程序规格说明书(软件需求)存在并且合理,如果软件功能和软件规格说明书不相符合,我们就说这是软件错误;

当软件需求不存在,用户需求存在且合理,软件功能和用户功能不相符合,就说明是软件错误。

二、开发模型(5个)

软件开发的生命周期:

需求分析——计划——设计——开发——测试——运行维护

1.瀑布模型

 特点:阶段性强,灭一个阶段比较独立;看中前期的需求分析和后期的测试

缺点:测试在编码后才开始介入,导致前期的问题,后期才发现,会失去错误补救的机会。

2.螺旋模型

 螺旋模型适用于项目庞大,前期风险不大,不是很明确的项目

特点:强调每一个迭代的测试质量和风险分析

缺点:风险管控人力物力投入很多,成本比较大。

3.增量模型      迭代模型

同一个系统的四个模块A B C D  两周时间

增量模型:第一周开发A B 功能模块,第二周开发C D功能模块

迭代模型:第一周先开发A B  C D 的基础功能,第二周在第一周基础上完善其他的功能 

特点:抗风险能力强

4.敏捷模型:

个体与交互重于过程和工具,可用的软件重于完备的文档,客户协作重于合同谈判,响应变化重于遵循计划。(轻量级开发模型)

特点:轻文档,轻流程,重目标,重产出

团队5-7人,时间2-4周

角色:

PO  product owner,把用户需求转化成user story

SM  scrum master 项目经历,管理整个团队,负责敏捷流程顺利实施

ST  scrum team 各种技能的人组成,开发、测试、UI

 发布计划会议:产品经理收集需求形成user story,讲解,排除本迭代需要进行开发的user story,形成spring backlog

迭代计划会议:分析用户故事,把user story分解成一个个的任务,分配给开发人员,制定开发计划

每日站会:昨天干了什么,今天的计划

产品演示会议:甲方,用户演示产品,PO把不足的地方收集成user story,下一次迭代改进

回顾计划会议:回顾整个迭代过程,把不足的地方找处理,在下一次迭代过程中改进,优化迭代流程

5.测试模型

(1)V模型

特点:

每一个阶段独立性强,左边每一个阶段是右边测试阶段的依据,和右边每一个测试阶段意义对应 

缺点:(瀑布模型的变种)

编码后才进行测试,前期的错误后期才发现,会失去错误及时纠正的机会

(2)双V模型

特点:每一个阶段独立性强,测试从一开始就介入,可以保证前期的问题及时发现和纠正

缺点:每一个阶段都是进行串行的过程。一个阶段完了之后就惊醒下一个阶段,不支持敏捷开发(拥抱开发)


http://www.kler.cn/a/16788.html

相关文章:

  • 基于Python的网上银行综合管理系统
  • 传奇996_21——龙岭事件
  • 代码随想录第二十一天| 669. 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树
  • MySQL系列之如何在Linux只安装客户端
  • 半导体企业如何利用 Jira 应对复杂商业变局?
  • CentOS 服务
  • 常见元件、封装、尺寸、表面处理等
  • C语言中的三种语句
  • fastai2 实现SSD
  • 1699_simulink代码生成配置初级方案
  • 【Java】内部类Object类
  • SpringBoot整合Redis实现点赞、收藏功能
  • @TransactionalEventListener的使用和实现原理
  • 【五一创作】【Simulink】采用延时补偿的三相并网逆变器FCS-MPC
  • 如何在CentOS上详细安装PageOffice进行企业文档管理和协作
  • Java 基础入门篇(五)—— 面向对象编程
  • 05_从0运行,重定位,初始化,中断再到定时器
  • kafka单机配置
  • 探索三维世界【3】:Three.js 的 Geometry 几何体 与 Material 材质
  • 《QDebug 2023年4月》
  • 烟火识别智能监测系统 yolov5
  • 生物信息学中---数据集不平衡的处理方法
  • 小红书违禁词有哪些,小红书违禁词汇总分享
  • 来上海一个月的记录、思考和感悟
  • ffmpeg-mov-metadate不识别Bug修复
  • JUC多并发编程 Synchronized与锁升级