为什么一裁员就先拿测试人员开刀,软件测试人员应该居安思危....(如何化解)
Posted 不只会测试55
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么一裁员就先拿测试人员开刀,软件测试人员应该居安思危....(如何化解)相关的知识,希望对你有一定的参考价值。
软件测试人员应该居安思危
每当经济不好,公司业绩不好的时候,公司都可能进行裁员。 首先裁的就是测试人员。 因为测试人员的技术水平相对来说比较低,容易被替代,招起来也比较容易。 公司往往先拿测试人员开刀。
身为测试人员,虽然我们平常的工作大部分都比较安逸。 但是千万不能温水煮青蛙。 应该自强不息, 要像开发人员一样, 不断学习,提高自己的编程水平。这样就算被裁也能很快找到新的工作。
测试人员应该比开发人员更熟悉业务需求
测试人员的水平主要体现在测试用例的设计上。 要设计出全面,覆盖广的测试用例,需要测试人员对自己所测试的项目的业务需求非常熟悉,甚至要比开发人员还要熟悉。
如果是测试银行系统,通信行业,或者ERP软件。 这些业务知识非常有用的,学习起来比较有激情。
要做到精通业务需求谈何容易。
1. 要熟读功能需求文档, 任何有疑问的地方都要去和PM确认。
2. 把自己当成最终用户, 经常使用自己所测试的软件。模拟用户的行为。
3. 熟记软件的每个功能。
假如倒霉碰到一些又没用,又繁琐的软件, 真的是不想去学习它的业务(出了这个公司就再也用不到的业务)
接下来给大家分享一些干货吧!面试大厂时候最容易遇到的问题,建议配合B站视频哦!链接放下面了:
B站面试干货合集,点击学习
大厂软件测试金典面试题100道
(由于题目答案较多,我把他整理出来了,需要的文章结尾,自行下载)
1、问:你在测试中发现了一个bug,但是开发经理认为这不是一个bug,你应该怎样解决?
首先,将问题提交到缺陷管理库里面进行备案。
然后,要获取判断的依据和标准:
- 根据需求说明书、产品说明、设计文档等,确认实际结果是否与计划有不一致的地方,提供缺陷是否确认的直接依据;
- 如果没有文档依据,可以根据类似软件的一般特性来说明是否存在不一致的地方,来确认是否是缺陷;
- 根据用户的一般使用习惯,来确认是否是缺陷;
- 与设计人员、开发人员和客户代表等相关人员探讨,确认是否是缺陷;
合理的论述,向测试经理说明自己的判断的理由,注意客观、严谨,不参杂个人情绪。
等待测试经理做出最终决定,如果仍然存在争议,可以通过公司政策所提供的渠道,向上级反映,并有上级做出决定。
2、问:给你一个网站,你如何测试?
首先,查找需求说明、网站设计等相关文档,分析测试需求。
制定测试计划,确定测试范围和测试策略,一般包括以下几个部分:功能性测试;界面测试;性能测试;数据库测试;安全性测试;兼容性测试
设计测试用例:
功能性测试可以包括,但不限于以下几个方面:
- 链接测试。链接是否正确跳转,是否存在空页面和无效页面,是否有不正确的出错信息返回。
- 提交功能的测试。
- 多媒体元素是否可以正确加载和显示。
- 多语言支持是否能够正确显示选择的语言等。
界面测试可以包括但不限于一下几个方面:
- 页面是否风格统一,美观
- 页面布局是否合理,重点内容和热点内容是否突出
- 控件是否正常使用
- 对于必须但未安装的控件,是否提供自动下载并安装的功能
- 文字检查
性能测试一般从以下两个方面考虑:
压力测试;负载测试;强度测试
数据库测试要具体决定是否需要开展。数据库一般需要考虑连结性,对数据的存取操作,数据内容的验证等方面。
安全性测试:
- 基本的登录功能的检查
- 是否存在溢出错误,导致系统崩溃或者权限泄露
- 相关开发语言的常见安全性问题检查,例如SQL注入等
- 如果需要高级的安全性测试,确定获得专业安全公司的帮助,外包测试,或者获取支持
兼容性测试,根据需求说明的内容,确定支持的平台组合:
- 浏览器的兼容性;
- 操作系统的兼容性;
- 软件平台的兼容性;
- 数据库的兼容性
开展测试,并记录缺陷。合理的安排调整测试进度,提前获取测试所需的资源,建立管理体系(例如,需求变更、风险、配置、测试文档、缺陷报告、人力资源等内容)。
定期评审,对测试进行评估和总结,调整测试的内容。
3、在搜索引擎中输入汉字就可以解析到对应的域名,请问如何用LoadRunner进行测试。
- 建立测试计划,确定测试标准和测试范围
- 设计典型场景的测试用例,覆盖常用业务流程和不常用的业务流程等
- 根据测试用例,开发自动测试脚本和场景:
录制测试脚本: 新建一个脚本(Web/html协议);点击录制按钮,在弹出的对话框的URL中输入”about:blank”;在打开的浏览器中进行正常操作流程后,结束录制;调试脚本并保存,可能要注意到字符集的关联。
设置测试场景: 针对性能设置测试场景,主要判断在正常情况下,系统的平均事务响应时间是否达标;针对压力负载设置测试场景,主要判断在长时间处于满负荷或者超出系统承载能力的条件下,系统是否会崩溃;执行测试,获取测试结果,分析测试结果
4、问:一台客户端有三百个客户与三百个客户端有三百个客户对服务器施压,有什么区别?
- 300个用户在一个客户端上,会占用客户机更多的资源,而影响测试的结果。线程之间可能发生干扰,而产生一些异常。
- 300个用户在一个客户端上,需要更大的带宽。
- IP地址的问题,可能需要使用IP Spoof来绕过服务器对于单一IP地址最大连接数的限制。
- 所有用户在一个客户端上,不必考虑分布式管理的问题;而用户分布在不同的客户端上,需要考虑使用控制器来整体调配不同客户机上的用户。同时,还需要给予相应的权限配置和防火墙设置。
5、试述软件的概念和特点?软件复用的含义?构件包括哪些?
软件是计算机系统中与硬件相互依存的另一部分,与计算机系统操作有关的计算机程序、规程、规则,以及可能有的文件、文档及数据。
软件复用(SoftWare Reuse)是将已有软件的各种有关知识用于建立新的软件,以缩减软件开发和维护的花费。软件复用是提高软件生产力和质量的一种重要技术。早期的软件复用主要是代码级复用,被复用的知识专指程序,后来扩大到包括领域知识、开发经验、设计决定、体系结构、需求、设计、代码和文档等一切有关方面。
可以被复用的软件成分一般称作可复用构件
6、软件生存周期及其模型是什么?
**软件生存周期(Software life cycle)**又称为软件生命期,生存期。是指从形成开发软件概念起,所开发的软件使用以后,知道失去使用价值消亡为止的整个过程。一般来说,整个生存周期包括计划(定义)、开发、运行(维护)三个时期,每个时期又划分为若干个阶段。每个阶段有明确的任务。
周期模型(典型的几种):
- 瀑布模型
- 快速原型模型:快速原型模型允许在需求分析阶段对软件的需求进行初步而非完全的分析和定义,快速设计开发出软件系统的原型,该原型向用户展示待开发软件的全部或部分功能和性能;用户对该原型进行测试评定,给出具体改进意见以丰富细化软件需求;开发人员据此对软件进行修改完善,直至用户满意认可之后,进行软件的完整实现及测试、维护。
- 迭代模型:迭代包括产生产品发布(稳定、可执行的产品版本)的全部开发活动和要使用该发布必需的所有其他外围元素。在某种程度上,开发迭代是一次完整地经过所有工作流程的过程:需求分析、设计、实施和测试工作流程。实质上,它类似小型的瀑布式项目。RUP认为,所有的阶段都可以细分为迭代。每一次的迭代都会产生一个可以发布的产品,这个产品是最终产品的一个子集。
生命周期阶段:
- 软件计划与可行性分析
- 需求分析
- 软件设计
- 编码
- 软件测试
- 运行与维护
7、什么是软件测试?软件测试的目的与原则
在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。
软件测试的目的:
- 测试是程序的执行过程,目的在于发现错误
- 一个成功的测试用例在于发现至今未发现的错误
- 一个成功的测试是发现了至今未发现的错误的测试
- 确保产品完成了它所承诺或公布的功能,并且用户可以访问到的功能都有明确的书面说明。
- 确保产品满足性能和效率的要求
- 确保产品是健壮的和适应用户环境的
软件测试的原则:
- 测试用例中一个必须部分是对预期输出或接过进行定义
- 程序员应避免测试自己编写的程序
- 编写软件的组织不应当测试自己编写的软件
- 应当彻底检查每个测试的执行结果
- 测试用例的编写不仅应当根据有效和预料到的输入情况,而且也应当根据无效和未预料到的输入情况
- 检擦程序是否“未做其应该做的”仅是测试的一半,测试的另一半是检查程序是否“做了其不应该做的”
- 应避免测试用例用后即弃,除非软件本身就是个一次性的软件
- 计划测试工作时不应默许假定不会发现错误
- 程序某部分存在更多错误的可能性,与该部分已经发现错误的数量成正比
- 软件测试是一项极富创造性,极具智力的挑战性的工作
8、软件配置管理的作用?软件配置包括什么?
软件配置管理(Software Configuration Management,SCM)是一种标识、组织和控制修改的技术。软件配置管理应用于整个软件工程过程。在软件建立时变更是不可避免的,而变更加剧了项目中软件开发者之间的混乱。SCM活动的目标就是为了标识变更、控制变更、确保变更正确实现并向其他有关人员报告变更。从某种角度讲,SCM是一种标识、组织和控制修改的技术,目的是使错误降为最小并最有效地提高生产效率。
软件配置包括如下内容:配置项识别、工作空间管理、版本控制、变更控制、状态报告、配置审计
9、什么是软件质量?
概括地说,软件质量就是“软件与明确的和隐含的定义的需求相一致的程度”。具体地说,软件质量是软件符合明确叙述的功能和性能需求、文档中明确描述的开发标准、以及所有专业开发的软件都应具有的隐含特征的程度。 影响软件质量的主要因素,这些因素是从管理角度对软件质量的度量。可划分为三组,分别反应用户在使用软件产品时的三种观点。正确性、健壮性、效率、完整性、可用性、风险(产品运行);可理解性、可维修性、灵活性、可测试性(产品修改);可移植性、可再用性、互运行性(产品转移)。
10、目前主要的测试用例设计方法是什么?
白盒测试:逻辑覆盖、循环覆盖、基本路径覆盖
黑盒测试:边界值分析法、等价类划分、错误猜测法、因果图法、状态图法、测试大纲法、随机测试、场景法
11、软件的安全性应从哪几个方面去测试?
12、什么是测试用例 什么是测试脚本 两者的关系是什么?
13、简述什么是静态测试、动态测试、黑盒测试、白盒测试、α测试 β测试
14、软件质量保证体系是什么 国家标准中与质量保证管理相关的几个标准是什么?他们的编号和全称是什么?
15、软件产品质量特性是什么?
16、软件测试的策略是什么?
17、软件测试分为几个阶段 各阶段的测试策略和要求是什么?
18、软件测试各个阶段通常完成什么工作?各个阶段的结果文件是什么?包括什么内容?
19、测试人员在软件开发过程中的任务是什么?
20、在您以往的工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量的软件缺陷(Bug)记录?
21、黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点!
22、如何测试一个纸杯?
22、测试计划工作的目的是什么?测试计划文档的内容应该包括什么?其中哪些是最重要的?
23、黑盒测试的测试用例常见设计方法都有哪些?请分别以具体的例子来说明这些方法在测试用例设计工作中的应用。
24、详细的描述一个测试活动完整的过程。(供参考,本答案主要是瀑布模型的做法)
26、BUG管理工具的跟踪过程(用BugZilla为例子)
27、您认为在测试人员同开发人员的沟通过程中,如何提高沟通的效率和改善沟通的效果?维持测试人员同开发团队中其他成员良好的人际关系的关键是什么?
28、你对测试最大的兴趣在哪里?为什么?
29、你自认为测试的优势在哪里?
33、简述你在以前的工作中做过哪些事情,比较熟悉什么。参考答案如下。
34、在C/C++中static有什么用途?(请至少说明两种)
35、引用与指针有什么区别?
36、Internet采用哪种网络协议?该协议的主要层次结构?Internet物理地址和IP地址转换采用什么协议?
38、软件验收测试包括
39、系统测试的策略
40、设计系统测试计划需要参考的项目文档有
41.通过画因果图来写测试用例的步骤为___、___、___、___及把因果图转换为状态图
43、请说出这些测试最好由那些人员完成,测试的是什么?
44、 设计测试用例时应该考虑哪些方面,即不同的测试用例针对那些方面进行测试?
45、 在windows下保存一个文本文件时会弹出保存对话框,如果为文件名建立测试用例,等价类应该怎样划分?
46、假设有一个文本框要求输入10个字符的邮政编码,对于该文本框应该怎样划分等价类?
47.软件测试项目从什么时候开始,?为什么?
48、什么是回归测试?
49.单元测试、集成测试、系统测试的侧重点是什么?
51.一个测试工程师应具备那些素质?
53:你所了解的的软件测试类型都有哪些,简单介绍一下。
54:你认为做好测试计划工作的关键是什么?
55:您认为做好测试用例设计工作的关键是什么?
56:你的测试职业发展目标是什么?
57:测试结束的标准是什么?
59、一套完整的测试应该由哪些阶段组成?
61、您是否了解以往所工作的企业的软件开发过程?如果了解,请试述一个完整的开发过程需要完成哪些工作?分别由哪些不同的角色来完成这些工作?您在以往的测试工作中都曾经具体从事过哪些工作?其中最擅长哪部分工作?
62、测试用例设计的原则是什么?目前主要的测试用例设计方法有哪些?
63、面向对象的测试用例设计有几种方法?如何实现?
64、LoadRunner分为哪三个模块?请简述各模块的主要功能。
65、你对测试最大的兴趣在哪里?为什么?
66、您所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性能测试……
67、请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。
68、当开发人员说不是BUG时,你如何应付?
69、为什么要在一个团队中开展软件测试工作?
71、一份测试计划应该包括哪些内容?
72、针对于软件的行业背景,你如何理解软件的业务?
74、如何定位测试用例的作用?
76、什么是兼容性测试?请举例说明如何利用兼容性测试列表进行测试。
77、对某软件进行测试,发现在WIN98上运行得很慢,怎么判别是该软件存在问题还是其软硬件运行环境存在问题?
78、需求测试的注意事项有哪些?
81、主键、外键的作用,索引的优点与不足?
84、性能测试的流程?
88、简述bug的生命周期?
89、缺陷记录应包含的内容?
91 您所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的区别与联系(如功能测试、性能测试……)
93、您认为做好测试计划工作的关键是什么?
95您认为做好测试用例设计工作的关键是什么?
96、.您以往的工作中是否曾开展过测试用例的评审工作?如果有,请描述测试用例评审的过程和评审的内容
98.您认为性能测试工作的目的是什么?做好性能测试工作的关键是什么?
100、.您以往所从事的软件测试工作中,是否使用了一些工具来进行软件缺陷(Bug)的管理?如果有,请结合该工具描述软件缺陷(Bug)跟踪管理的流程。
101、.您如何看待软件过程改进?在您曾经工作过的企业中,是否有一些需要改进的东西呢?您期望的理想的测试人员的工作环境是怎样的?
如何解决
1.提升自身原有优势
人脉,资源,工作经验等…
1) 技术上,在这个行业浸淫了十几二十年,什么东西都见过,一般的事情很快都能上手。
2)经验丰富,在工作中,踩过坑,填过坑,这些都是宝贵的财富,有了他们, 公司不需要再走一遍弯路,所谓成长的代价。
3) 他们人脉关系,很多时候能给公司带来一定的业务,有什么困难,用人脉关系能解决。
说了这么多,比较了优缺点以后发现,如果是简单的事情,就没有必要找老员工,只有那些坑多,需要老员工来知道的事情,可以找老员工,但是一般都是一个老员工,带着好几个新员工, 这样团队既有经验,又有冲劲。
2.明确规划好职业道路
1)企业高管
这是金字塔顶端的人才,对于他们来说,没有什么45岁限制,他们工作都是有猎头,或者介绍,不会出现在招聘市场。
2)专业人士,越老越吃香
比如律师,医生,老师,他们的年纪越大,经验越丰富,不但不会被淘汰,还被当做宝
3)创业自己做老板
40多岁是一个人经验能力到达顶峰,加上都会有一些积蓄,人脉也丰富,这个时候,就会有出入创业的冲动,当然创业有大有小,不一定能成为独角兽,但是也是为自己的梦想奋斗。
开个小店做小生意,也算是为自己打工。
4)成为公司的核心骨干,灵魂人物
40岁的总工程师,大家都抢着要,他们经验,他们的技能都会成为公司的财富。
5)实在没有技能,工厂都进不去,就只能服务业了,比如说保安,保洁。
分享
转眼就快到“金九银十”,又是个面试求职的黄金期。近来许多网友都在求一份完整、系统的学习资料和最新的大厂面试真题,巧了!这两样,我都有!于是就将收集了大半年的测试架构师必知必会知识点 归纳整理成了一套系统的测试架构师开发者进阶学习笔记。以及对2020-2021几乎所有的大厂面经、优质面试真题也归纳整理了起来,现在发上来分享给大家。(文末会有PDF电子书领取方式,免费的)
现在网上资料实在太过于杂乱、零散、碎片化,总看着看着就衔接不上了。
资料也是五花八门、良莠不齐,部分博主各种以次充好,整个什么几十页的PDF,便号称是整套的测试架构师知识体系。
本文根据 测试架构师开发中知识点系统的分类整理成了十六大内容板块, 想看哪一块可以根据索引迅速找到,希望可以帮助大家,祝大家求职顺利!
注:内容实在过多,无法全部展示,我将《测试架构师学习进阶宝典》共计400多页PDF,以及100G 软件测试全套学习视频,涵盖功能测试、自动化测试、测试开发、性能测试、 安全测试、大数据测试、测试管理等实战学习视频!上传到了我的 石磨文档,大家可直接免费获取,别忘了给文章点个赞哦~
点击下面蓝色文字,即可获取
《【测试架构师】系统 初级测试工程师-测试架构师 学习之路》
不用怕 “零”基础
基础-进阶系统学习全套资源包
软件测试系统学习视频 基础-进阶
软件测试大厂面试题合集
总结
如果你对自己的智商,解决问题的能力,钻研的态度,有信心,it行业非常适合你;能力锻炼出来了,工资就高,不停的抛出问题给你解决,让你有成就感;技术水平随着时间积累,越到后期越强;那你赶紧去报班/自学,从实习生做起,3年之后自然NB;如果你想混(钻研精神不足),真的会很惨;半辈子没挣得什么像样的资产(初级程序员工资真心不高),长期加班熬夜落下一身病,然后40岁除了编程啥也不会,编程还贼菜,在小公司厮混业务代码,老板说不定什么时候就说散伙,然后和小伙子们竞争初级程序员岗位。。。。。;
坚持8年的老前辈的经历告诉我,在错误的方向上,越坚持越受伤;
《【测试架构师】系统 初级测试工程师-测试架构师 学习之路》
以上是关于为什么一裁员就先拿测试人员开刀,软件测试人员应该居安思危....(如何化解)的主要内容,如果未能解决你的问题,请参考以下文章
工作8年面临公司裁员!功能测试(点点点)到自动化测试人员的转型之路的感悟---送给还在职场中迷茫的你