测开入门(附常考面试题)(上)

简介: 测开入门(附常考面试题)(上)

一、什么是软件测试?

 

验证软件产品特性(功能、界面、安全性、兼容性、性能)是否符合用户需求

软件测试是贯穿于软件的整个生命周期的

软件测试不仅要测试软件系统是否做了其该做的,还要测试系统是否未做其该做的


面试题


软件测试和软件开发的区别?

软件测试:主要是保障产品质量

软件开发:主要是编写业务代码


软件测试和软件测试开发的区别?

首先软件测试和软件测试开发的主要工作内容都是保障产品质量,不同的是软件测试开发还额外需要开发一些测试效能工具——来提升测试效率


软件测试和开发测试(软件调试)的区别?


目的不同

软件调试:开发人员验证软件是否实现了他想让软件实现的功能

软件测试:测试人员验证软件是否实现了用户的需求

角色不同

软件调试:开发人员来做

软件测试:开发人员和测试人员,一起来做这件事!(在软件测试中,开发人员主要是做  白盒测试的——与代码相关的)

阶段不同

软件调试:开发阶段

软件测试:贯穿于软件的整个生命周期


你为什么要选择软件测试开发的工作?

回答自己的核心竞争力体现在哪里——自己的优势

自己有着优秀的测试人员需要具备的素质

综合能力:

1)沟通能力

2)快速学习能力

3)开发能力

4)文字能力

优秀的测试用例设计的能力

掌握自动化测试技术

探索性思维、兴趣、有责任感


我看你的简历上有较多的开发技能?你为啥要选择测试工作呢?你的优势在哪里?

有开发技能可以帮助我们更好的编写测试用例(不要抨击别人、抨击学校,这时面试的大忌)

二、软件测试的基础概念

1、需求


b028db865e194d99aa9c09d48c5b3744.png

用户需求是五花八门的,描述是简略的。并且用户需求不一定是正确的、合理的,需要进一步的对用户需求进行提取和分析,所以用户需求不可以作为测试/开发工作的依据!!


软件需求才是进行测试/开发工作的的基本依据(产品经理写的软件需求文档)


2、测试用例

测试用例(Test Case) 是为了实际测试而向被测试的系统提供的一组集合,这组集合包括:测试环境、操作步骤、测试数据、预期结果


测试人员在执行测试之前需要编写测试用例,测试用例的好坏与产品测试质量有很大的关联关系。


我们在测试的时候,光凭头脑风暴来进行随机的测试肯定是不行的,所以我们就需要根据提前编写好的测试用例来进行更完善的测试


afcc11de40b74956977ee865361a71f1.png

大家乍一看,可能就会觉得,这个测试用例很正常。

唯一缺点:就是不够详细。

是的,没有错!

测试用例,就如同 上图给标题一样“正确的用户名密码可以成功登录邮箱”,它是一个非常模糊 和 片面的说法。

而我们通过将其划分成 4 个部分,来将这个测试用例进行初步的划分,
而且,划分出的这几个部分,其实也是可以进行细分的!
划分成一个个测试点

63a6a0ab61784112b3cde67da24b51a8.png


3、BUG

BUG也叫做软件缺陷和软件错误

准确的说:当且仅当规格说明(软件需求文档)是存在并且是正确的时候,程序与规格说明之间的不匹配才是错误BUG。

这个BUG可以来自前端、也可以是后端,甚至是来自产品经理写的需求文档。


三、生命周期

🍑软件的生命周期

需求分析--》计划--》设计--》编码--》测试--》运营维护


需求分析:进行市场分析,这个需求量大不大?投入与盈利的占比?技术上 能否实现或者说实现的难度?

计划:什么时候开始?什么时候结束?过程耗时多少?

设计:将需求细化为一个一个的任务,进行计算设计(要用到哪些接口?采用什么框架?

编码:开发人员参考需求文档和技术文档进行功能代码的编写

测试:测试人员要参考测试用例来执行测试(注意测试用例是在测试前就编好的,要明白我们的测试是贯穿软件的整个生命周期的)

运行维护:修复性的维护(对项目中未发现的问题进行修复)完善性维护(对功能进行完善)预防性维护(居安思危,为了避免产品在线上出现一些意想不到的问题,进行一些预防的手段)


🍑软件测试的生命周期

软件测试是贯穿于软件整个生命周期的。


需求分析——》测试计划——》测试设计与开发——》执行测试——》测试评估

测试计划:测试人员也需要编写测试计划文档——有多少测试人员,什么时候开始测试?

测试设计与开发:测试人员需求借助需求文档和技术文档来编写测试用例。



相关文章
|
28天前
|
存储 缓存 算法
Java入门高频考查基础知识4(字节跳动面试题18题2.5万字参考答案)
最重要的是保持自信和冷静。提前准备,并对自己的知识和经验有自信,这样您就能在面试中展现出最佳的表现。祝您面试顺利!Java 是一种广泛使用的面向对象编程语言,在软件开发领域有着重要的地位。Java 提供了丰富的库和强大的特性,适用于多种应用场景,包括企业应用、移动应用、嵌入式系统等。下是几个面试技巧:复习核心概念、熟悉常见问题、编码实践、项目经验准备、注意优缺点、积极参与互动、准备好问题问对方和知其所以然等,多准备最好轻松能举一反三。
61 0
Java入门高频考查基础知识4(字节跳动面试题18题2.5万字参考答案)
|
2月前
|
存储 缓存 索引
【数据结构入门精讲 | 第十四篇】散列表知识点及考研408、企业面试练习(1)
【数据结构入门精讲 | 第十四篇】散列表知识点及考研408、企业面试练习(1)
25 0
|
2月前
|
定位技术 调度
【数据结构入门精讲 | 第十九篇】考研408、企业面试图专项练习(二)
【数据结构入门精讲 | 第十九篇】考研408、企业面试图专项练习(二)
24 0
|
2月前
|
存储 算法
【数据结构入门精讲 | 第十八篇】考研408、企业面试图专项练习(一)
【数据结构入门精讲 | 第十八篇】考研408、企业面试图专项练习(一)
18 0
|
2月前
|
算法 计算机视觉
【数据结构入门精讲 | 第十六篇】并查集知识点及考研408、企业面试练习
【数据结构入门精讲 | 第十六篇】并查集知识点及考研408、企业面试练习
28 0
|
2月前
|
自然语言处理 数据安全/隐私保护
【数据结构入门精讲 | 第十五篇】散列表知识点及考研408、企业面试练习(2)
【数据结构入门精讲 | 第十五篇】散列表知识点及考研408、企业面试练习(2)
23 0
|
2月前
|
存储 机器学习/深度学习 算法
【数据结构入门精讲 | 第二篇】考研408、企业面试基础概念习题
【数据结构入门精讲 | 第二篇】考研408、企业面试基础概念习题
51 0
|
2月前
|
存储 算法 索引
【数据结构入门精讲 | 第四篇】考研408、企业面试表专项习题
【数据结构入门精讲 | 第四篇】考研408、企业面试表专项习题
53 0
|
2月前
|
人工智能 算法
【数据结构入门精讲 | 第十三篇】考研408、公司面试树专项练习(二)
【数据结构入门精讲 | 第十三篇】考研408、公司面试树专项练习(二)
29 0
|
2月前
|
机器学习/深度学习 存储 算法
【数据结构入门精讲 | 第十二篇】考研408、公司面试树专项练习(一)
【数据结构入门精讲 | 第十二篇】考研408、公司面试树专项练习(一)
22 0