-
开发人员:对代码质量负责,写测试代码,通过自动化的方式做功能测试
-
项目负责人:对过程质量负责,起主要责任
最理想状态:人人都为产品质量负责。
软件测试的主要工作
-
发现bug
-
报告bug
-
跟踪bug
如何发现bug?
根据需求设计测试用例,尽可能覆盖所有用户操作的可能。除了基本的功能性测试,还需要进行非功能性的测试,包括性能、安全性和用户体验等。测试人员通过设计出完整的、有较高覆盖率的测试用例,逐一测试,这样就可以做到及时发现bug。
如何报告bug?
发现bug之后,通过bug跟踪系统跟开发人员创建Ticket,详细说明bug的内容,包括以下部分:
-
预期和实际效果
-
重现步骤
-
必要的截图、日志等辅助信息
如何跟踪bug?
除了报告bug让开发去修复,测试人员还应该针对bug的修复验证。通常就是我们常说的回归测试,避免开发者因为修复一个Bug,引入其他的问题。
关于一些大厂不设置专职测试的话题
比如Facebook、Google和Amazon这些公司之所以能够做到不设置专职测试,它们都有以下共同的特点:
-
大量优秀的工程师,可以同时兼任开发和测试;
-
有大量的自动化测试代码覆盖
-
强大的发布和监控系统
-
时间进度比较宽松
-
用户对Bug容忍较高
光是第一条,国内很多公司都达不到,我个人觉得人才是最重要的一环,能够写自动化测试代码并且保证覆盖的工程师本身就稀缺,还要依赖完备的发布和监控系统;从时间的调性,国内强调KPI,产品竞争激烈,时间会压得很紧,所以工程师首先压的就是测试的时间,更别说是写自动化测试了。
但从未来的趋势看,开发和测试更多的融合是一种常态,对工程师要求会越来越高;我认为完全不设置测试岗位不现实,类似一些功能性测试或许会从正式人力变成外包的形式,而正式人力会更多要求有开发能力去开发能提升测试效率的工具和搭建平台。
33 | 测试工具:为什么不应该通过QQ/微信/邮件报Bug?
一个基本的Bug信息包括
-
标题;
-
描述(包括期望结果、实际结果和重现步骤等关键信息)
-
优先级;
-
指派人;
-
状态(New、Open、Rejected、Fixed等);
-
其他。
为什么不用QQ、邮件等方式处理Bug?
-
不易检索和跟踪
-
效率太低,开发人员容易被消息打断
-
不够直观,比如各种状态的统计
Bug跟踪系统的主要功能是用来跟踪Bug的,不是用来讨论和扯皮的。
一些自动化测试的趋势
-
国外的一些大厂,手工测试职位在减少,转变招聘能写自动化测试的软件测试人员
-
软件开发人员不仅要能写功能代码,还需要实现一定量的自动化测试代码
关于宝玉老师列的一些软件测试工具我就不重复贴了,感兴趣自己去订阅看看。
这节课从标题上就能知道有关安全的话题,软件中的安全问题来源主要分为以下三大类:
-
第一类:恶意输入(比如SQL注入、XSS攻击)
-
第二类:假冒身份(后台没有做权限控制)
-
第三类:数据泄露(账号密码明文记录,日志泄露)
如何应对安全问题?
最后
希望大家能有一个好心态,想进什么样的公司要想清楚,并不一定是大公司,我选的也不是特大厂。当然如果你不知道选或是没有规划,那就选大公司!希望我们能先选好想去的公司再投或内推,而不是有一个公司要我我就去!还有就是不要害怕,也不要有压力,平常心对待就行,但准备要充足。最后希望大家都能拿到一份满意的 offer !如果目前有一份工作也请好好珍惜好好努力,找工作其实挺累挺辛苦的。
这里附上上述的面试题相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司19年的面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。
由于篇幅有限,这里以图片的形式给大家展示一小部分。
这里附上上述的面试题相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司19年的面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。
由于篇幅有限,这里以图片的形式给大家展示一小部分。
[外链图片转存中…(img-e3un38nu-1720106141270)]