面试软件测试所需要掌握的7个技能
摘要:软件开发和软测试是息息相关的,很多人知道软件开发,但是对软件测试的了解不是很多。怎么才能成为一名专业的软件测试人员呢?
IT互联网的飞速发展,很多人选择从计算机方面开发着手,在整个计算机行业的,不同岗位所需要具备的能力是不同的。软件开发和软测试是息息相关的,很多人知道软件开发,但是对软件测试的了解不是很多。怎么才能成为一名专业的软件测试人员呢?
一、测试用例的编写
1.在测试中最重要的文档,他是测试工作的核心,是一组在测试时输入输出的标准,是软件需求的具体对照。编写测试用例,是测试人员的基本功,真正能写好的人并不多。
2.测试用例包含的内容:用例编号,用例名称,测试背景,前置条件,优先级,测试数据,测试步骤,预期结果,实际结果,备注。
3.当测试小伙伴拿到第一个需求文档的时候,进行分析,提取测试点,编写测试用例,然后叫上开发,产品以及相关人员进行用例评审。
4.编写测试用例常用的方法:等价类划分法,边界值分析法,错误推断法,流程图法等,
5.学会质疑需求,不要完全按照需求来写测试用例,要从用户角度去理解需求,看到需求之外的功能和体验。
二、http与https协议
1、http协议原理
HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。----自行百度补脑
2、TCP和UDP区别
TCP和UDP是OSI模型中的运输层中的协议。TCP提供可靠的通信传输,而UDP则常被用于广播和细节控制交给应用的通信传输.。—自行百度补脑
3、get和post区别
1)Get,它用于获取信息,它只是获取、查询数据,也就是说它不会修改服务器上的数据,从这点来讲,它是数据安全的,而稍后会提到的Post它是可以修改数据的,所以这也是两者差别之一了。
2)Post,它是可以向服务器发送修改请求,从而修改服务器的,比方说,我们要在论坛上回贴、在博客上评论,这就要用到Post了,当然它也是可以仅仅获取数据的。
三、业务了解能力
首先明确一点一定要了解业务,只有了解业务,才能把功能测试做好,并且会有一定的提高。
什么时候接入自动化-----当你的系统趋于稳定的时候。
什么时候介入接口测试-----当接口开发完毕的时候。
什么时候介入性能测试-----当出现促销的时候,或者抢购的时候等等。
四、测试工具的使用
1、接口测试工具:apipost
使用apipost进行接口测试,输入url地址,请求方法,参数点击发送查看接口是否正确。
2、性能测试工具:jmeter
使用jmeter对系统进行性能测试,对系统进行压力测试、负载测试、稳定性测试等
五、自动化测试代码编写能力
1、ui自动化编写
a、web自动化:一般是使用python+selenium对web网站进行ui自动化脚本的编写
b、app自动化:一般是使用python+appuim对移动端进行ui自动化脚本的编写
2、接口自动化编写
一般是使用python+requests进行接口自动化测试的
六、熟练使用SQL
1.常用的sql语句,如增删改查。
2.了解数据库的事务,会编写存储过程,熟练常用的系统函数。
3.了解并可以进行数据库的备份,迁移,还原,镜像等。
4.对sql语句进行调优,并对可以运行的语句监控查看性能。
5.了解数据库的集群。
七、Linux
1.Linux是测试人员的基本功,不需要掌握太难或者很不常见的Linux命令,正常能做到查看日志,定位问题就可以了。
2.初级测试人员工作是经常遇到,发现bug,开发不承认或者不愿意解决的情况,测试人员怎么摆脱这样的问题呢?
根据发现的bug日志级别,来查看日志,定位问题,那这里首先要说一下日志级别。日志级别越高,输出的信息越少。
info:代码info信息,不包括sql语句等一些debug信息。
warning :代码警告信息。
error : 程序本身报错信息
一般不符合需求的bug在debug中,程序本身报错的在error中。
本文分享自华为云社区《软件测试所需要掌握的技能》,原文作者:奔四码农 。