目录

软件测试认识测试测试岗位软件测试和开发的区别优秀的测试人员需要具备的素质

【软件测试】认识测试|测试岗位|软件测试和开发的区别|优秀的测试人员需要具备的素质

推荐

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【 】

思维导图:

https://i-blog.csdnimg.cn/direct/d57a8c5c6e9f4c419f2a1f5809bd17c7.png

一、什么是测试

测试在⽣活中处处可⻅

1.生活中的测试场景

案例⼀:对某款购物软件进⾏测试

https://i-blog.csdnimg.cn/blog_migrate/69f03d32aad33d4ccb190021ceaf7dc4.png

*启动测试:点击软件图标,测试软件是否可以正常打开

搜索测试:点击输入框,输入关键词,点击搜索

商品测试:点击商品进入详细页

购物测试:点击购买下单成功

案例二:对⼀个JAVA程序进⾏测试

https://i-blog.csdnimg.cn/blog_migrate/c4de415ec82616188e2e7a01901c9fec.png

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

a=1,b=2,返回的c是否等于3

a=1,b=-2,返回的c是否等于-1

a=-1b=2,返回的c是否等于1

a=-1,b=-2,返回的c是否等于-3

…*

当前程序就存在bug,除数不能为0

由此可⻅,测试不仅在⽇常⽣活中以及学习中都处处可⻅

1.2 为什么需要软件测试

| 企业为何需要招聘⼤量的测试⼈员呢?

企业最终的⽬的是“盈利”,互联⽹企业借助软件/系统来跟⽤⼾交互从⽽获得盈利,也就是说企业的

受众群体主要是⼴⼤的使⽤⽤⼾,⽽⽤⼾的使⽤感受将直接影响企业的盈利,若产品质量太差将导致

⼤量⽤⼾的流失,所以企业⾮常重视测试

https://i-blog.csdnimg.cn/blog_migrate/3648ae84c4ef4665c97c0178efca20c0.png

1.3 软件测试定义

💡 软件测试就是验证软件 产品特性 是否满⾜⽤⼾的 需求

这里的产品特性有:功能,性能,界面,易用性…

二、测试的岗位有哪些

测试的岗位主要分为以下两个⽅⾯:

1. 软件测试开发⼯程师(简称测开)

*⼯作重⼼为可测试性以及通⽤测试基础框架。编写单元测试框架和⾃动化测试框架。软件测试开发⼯

程师关注质量提升和测试覆盖率* (业务测试,开发测试效率工具(自动化,性能测试,覆盖率…等)

2. 测试⼯程师

|与软件测试开发⼯程师关系密切,但把⽤⼾放在第⼀位来思考。测试⼯程师组织整体测试实践,并进 ⾏分析总结,驱动测试执⾏,构建端到端的⾃动化测试。 (业务测试,也就是点点点的测试)

不管是测开还是测试工程师,都统称为测试人员

然⽽我们在投递简历时,会看到各种各样的测试名称,形如:

BOSS直聘⽹站提供的测试岗位名称:

https://i-blog.csdnimg.cn/blog_migrate/115645d8db2a309cdc79c7a674a095df.png

不同的企业对于测试的命名不同,不管是测试⼯程师、功能测试、移动端测试、客⼾端测试等等都是

测试岗位,性质要么是测试⼯程师,要么是测试开发⼯程师。(只是叫法不同,没有区别)

| *注意:同学们后续投递测试岗位时不⽤关注岗位名称和岗位要求,对于校招⽣来说是没有明确的语⾔

或者技能要求的,⾯试主要从简历上写的内容进⾏考察*

💡 ⾼频⾯试题

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

相同点:

1.都统称为测试⼈员

2.对产品质量负责,保障产品的质量

不同点:

测试开发⽐测试 多“开发”⼆字 ,⽽这个开发并不是指业务开发,因为业务开发是开 发⼈员的主要职责,这⾥的开发指的是需要 开发测试效率⼯具 ,通过效率⼯具来提升测试 效率和测试质量,⽐如我们的⾃动化、性能测试等就属于效率⼯具

对于测试实习一般都是:

*1.熟悉工作和测试流程

2.通过业务测试熟悉个人的测试能力

3.掌握各种各样的工具提高测试质量和效率

4.开始逐步学习开发各种效率工具*

三、软件测试和开发的区别

3.1 ⼯作内容

开发⼈员:(业务开发)

  1. 通过⼀些编程语⾔,如C,C++,C#,Java,

    Python,PHP实现软件的特性

  2. 修改BUG

    https://i-blog.csdnimg.cn/blog_migrate/0a7c11b1a7a176d1a94605de9a9a72aa.png

测试⼈员:(业务测试)

  1. 编写测试⽤例,执⾏测试⽤例,发现软件的缺

    陷,验收缺陷…

  2. 利⽤测试⼯具保障软件的质量

    https://i-blog.csdnimg.cn/blog_migrate/85b1c35114338c6b7e4624522c6c3f65.png

3.2 难易程度上

https://i-blog.csdnimg.cn/blog_migrate/52c0ed9351645a6db547523744e02d4f.png

总结 :开发⼴度⼩,专业度⾼。测试⼴度⼤,专业度相对较低,⼤型互联⽹企业对测试⼈员的专业要求可能跟开发差不多

3.3 ⼯作环境

很多公司,测试⼈员和开发⼈员都是坐在⼀个办公楼层的不同区域,所以他们的⼯作环境,⼯作设备基本都是⼀样的

3.4 薪⽔

中⼩企业总体⽐研发低,⾃动化等专业测试和研发基本⽆差距。⼤⼚研发测试薪资基本⽆差别,最终都要以个人能力来评估

3.5 其他不同

测试⼈员经常会进⾏测试动作,⽽开发⼈员进⾏进⾏调试动作,调试和测试是同⼀个含义吗?

https://i-blog.csdnimg.cn/blog_migrate/ea09fc69fdc3b08388464f58dc4cdca9.png

💡 ⾼频⾯试题

1.⾛测试岗位为什么还要学习开发知识?

1)测试⼈员 也需要编写代码 ,如⾃动化测试、性能测试、开发测试效率⼯具等。测试⼈员 需要 能够看懂代码 、了解开发框架。

2)学好开发知识能够 提⾼软件测试质量 。通过查看代码中数据的⾛向能够更好的从代码层 ⾯去发现问题

https://i-blog.csdnimg.cn/blog_migrate/a240f0b79bbde14d57511ac0d11b0f6b.png

四、优秀的测试人员需要具备的素质

4.1综合能力

| *沟通能力

快速学习的能力

开发能力

文字能力*

|开发人员

测试人员—测试过程中发现bug、测试用例、测试计划 、测试报告…

产品经理—-写需求文档的人(发布任务的人)

eg:抖音—-测试

1.先了解抖音是做什么的(业务是什么)

2.了解组内做测试的具体形式和步骤是什么

3.做业务测试的步骤

问题:开发和测试出现冲突怎么办?

(1)反思自己是否是bug描述的不清楚,或者由于自己的 疏忽导致误判

(2)站在用户的角度反问开发人员:如果你是用户你能接受这样的情况吗?

(3)不仅能提出问题,最好也能给出解决方案

4.2掌握自动化测试技术

自动化测试只是一个统称:接口自动化、UI自动化(前端自动化)

eg:每隔一段时间软件就要更新(新增或优化些功能),历史功能不受影响的基础上增加新的功能

每次更新迭代历史功能都需要手动测试一遍,耗时耗力,而历史功能测试内容基本都是一样的,如果借助自动化来测试历史功能将极大的节省人力和时间

4.3测试用例的涉及能力

测试用例设计能力是指,无论对于什么类型的测试,都能够设计出高效地发现缺陷,保证产品质量的优秀测试用例。

设计测试用例是测试岗位面试/笔试必考题!!!

*如何提高测试用例设计的能力?

1.掌握设计测试用例的方法 (设计测试用例的万能公式!!!)

2.阅读好的测试用例设计案例

3.多写多练,积累,总结*

4.4 探索性思维

测试⼯程师在执⾏测试的过程中不断学习被测系统,结合⾃⼰的 **经验,知识,直觉,进⾏系统的错误

猜测和逻辑推理** ,整理和分析出更多有针对性的的测试关注点。探索性思维的质量 **取决于测试⼈员的

经验** 。

⽣活中有很多要做的事情都需要⼈们具备探索性思维。

⽐如炒菜,油温的⼤⼩控制,⽕候⼤⼩的控制,调味品量的控制都⾮常考验厨师的探索性思维。炒的好那叫菜,炒的不好那就是放毒了…

4.5兴趣

兴趣是就业择岗的重要因素之⼀,选择了但是仍然对个⼈的⼯作性质不感兴趣,可想⽽知,这样的选择也不会⾛的太远

4.6责任感和压力

对于大家来说最大的压力就是今后找工作~

碰壁了,难受了这都是必然会遇到的情况 不要气馁

  
只要我脸皮够厚,投递的够多,机会就越多,我的工作自然就来了~~

> 💡 ⾼频⾯试题 为什么⾛测试岗位⽽不⾛开发岗位?
>   
> 回答思路:
> **从岗位⼯作性质分析+个⼈性格/爱好+个⼈职业规划三个⽅⾯阐述**
> 。
>   
> 1)个⼈兴趣爱好:从性格和兴趣出发,测试⼯作需要测试⼈员具备良好的耐⼼、细⼼,接 触了测试内容后对测试⼯作产⽣浓厚兴趣
>   
> 2)岗位性质:不管是测试还是测试开发都统称为测试⼈员,测试⼈员主要以保障项⽬测试质量为主,通过开发⼀些测试效率⼯具(⽐如我们学的⾃动化就是效能⼯具,除此之外还 有我们课件上写的内存泄漏⼯具等等)来提⾼测试效率。⽽软件开发主要以业务编码为 主。
>   
> 3)个⼈职业规划:⼤学期间就树⽴了⾛测试⽅向的⽬标,今后将继续提⾼测试和开发能 ⼒,争取在测试领域做出⼀番有影响⼒的事务