腾讯面试官:“ 搭建过测试环境吗 ”,没想到我是这样回答的...
Posted 程序员二黑
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了腾讯面试官:“ 搭建过测试环境吗 ”,没想到我是这样回答的...相关的知识,希望对你有一定的参考价值。
📢 我是二黑,一个快要秃头的测试人
📢 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
📢 我收集了一些软件测试资料,关注我公众号:程序员二黑,免费领取!
📢 最困难的时候,也就是我们离成功不远的时候!
很多人在面试软件测试的过程中,经常被问到“你会搭建测试环境吗”面对这样的提问,你知道怎么回答么?
怎 么 回 答
面试的时突然被问到,很多人的都会感觉脑子一下真空,不知道从何说起。第一点就是不知道面试官问这个问题的意图?很多人在工作中 压根就没搭建过测试环境 根本就不知道从何说起。
面试官问这个问题的意图,就是想要看看你是否有实战经验,并且希望你是一个能独立扛起项目并能自己搭建测试环境的优秀测试工程师。
有些公司可能会有运维部门负责搭建测试环境,但是软件测试人员如果一味依赖运维,将会大大的限制了我们测试工程师测试工作的进展。
而且整个项目的测试环境不是软件测试工程师负责维护的,后期业务如果要优化测试环境的时候,或者遇到问题的时候,还要依赖运维,这将会导致整个项目时间延迟推后,工作也有可能不保!!
需 要 掌 握 的 知 识
知道了软件测试工程师搭建测试环境的重要性,那么真正要具备这些能力,要掌握什么样的知识和技巧呢?
首先要知道什么是测试环境!!
测试环境,是指为了完成软件测试工作所必需的计算机硬件、软件、网络设备、历史数据的总称,简而言之,测试环境的搭建靠硬件+数据准备+测试工具+软件+网络。
我们要想学会搭建测试环境,并且把环境搭建好就必须具备这5种知识。
所以我们就着重讲解这五点!且听我慢慢道来!
一 、硬件
硬件相关的测试就是计算机系统相关的内容,比如Windows(7、8、10)系统,Linux(centos 7)系统和苹果(mac os)系统。
测试环境可以部署在以上任何一种系统上,根据当前被测软件的具体需求而定。
软件运行在的系统,会更多的在Windows系统上;但相关环境的搭建,比如软件后台的承载服务,一般都会搭建在Linux系统上。
所以Linux系统相关的命令和操作是软件测试工程师必备技能之一!
二、软件
包括当前被测的软件以及相关依赖和交互的软件。
当前被测软件的部署,一般在部署好的Linux系统上安装好服务之后,可以直接在前端通过web或者APP访问,后端只要部署完成了,前端的运行还是比较简单的;
依赖和交互的软件,一般是一些支持的软件,比如JDK,tomcat,数据库等。
大家可以打开腾讯课堂,搜索凡猫教育,也可以找我们的客服人员领取相关视频
需 要 掌 握 的 技 能
三、 网络
这个可能是很多测试小白的一个盲区。
大家可以先学习一些跟搭建环境密切相关的网络知识,然后自己再慢慢的去理解。
软件测试工程师需要规划和配置IP地址,部署路由和VLAN等相关配置,实现网络隔离和通信,这样才可以开展正常的业务测试;
另外,对于一些常用的基础网络协议,如TCP,HTTP,UDP等,最好也能有个基本的认知。
当然,除了以上网络设备,我们还需要知道操作Linux的基本网络配置。
1、 系统的IP和路由配置
2、调试网络通信问题等
3、 Linux系统命令抓包
这些都是需要Linux命令和网络基础知识结合在一起使用的。
四、测试工具
大家执行黑盒测试的时候,会利用各种工具代替手工,深化测试;
执行压力和性能的时候,就更加需要借助测试工具模拟出来高并发、高吞吐、高持续的数据。
软件测试工程师可以针对自己个人发展,选择顺手的工具进行学习。
比如要做接口测试,可以学习postman,jmeter;
你要做压力和性能测试,可以学习Loadrunner,Jmeter的使用;
还有一些常用的抓包工具,如fiddler,必须学习起来。
总之,工具是辅助测试的好帮手,灵活使用可以让你的测试效率事半功倍。
五、 数据准备
一般指测试数据的准备。
测试数据会在测试用例设计的阶段设计好,然后软件运行的时候,作为软件输入去验证软件功能。
如果是少量、正常的测试数据,可以直接通过手动方式模拟出来,如果是大量的用户数据的模拟,可以借助测试工具来构建,这个接下来的测试工具部分会再详细讲到。
面 试 技 巧
所以,在你成长成为一个全能型优秀测试工程之前,被面试官问到这种问题要怎么办呢?
这里,我可以分享给大家一些小技巧。
首先,去面试之前,先了解你要去面试的公司具体是个什么类型的公司。
其实这点,不止针对这个问题,应该是针对所有的面试,都应该先弄清楚你要去面试的公司主要职位要求和公司业务,有针对性的去着手准备自己的知识体系和回答问题的方向,这是面试的一个锦囊。
回到我们今天要讨论的环境搭建的问题,因为不同的公司所需要你具备的搭建测试环境的能力是不一样的。
如果是传统的Windows软件的公司,搭建测试环境大部分都是跟系统相关的,也就是上面我们讲到的硬件部分要求的内容。
那么你就需要提前把Linux系统的相关的知识抓紧时间恶补一下;
搭建这样的测试环境,则侧重更多的是Linux系统知识,还有相关服务的搭建以及各种工具的使用。
不过,先分析公司类型和业务,针对岗位需求提前做准备的这种思路,肯定是百利而无一害的。
当然,这种分析也只是一个大概的总结,不是绝对正确也不能涵盖所有的情况,所以大家做一个参考就好。
另外,面试之前,大家一定要根据自己已有的工作经验和知识体系做好相关的梳理。
大部分面试官,都会要你根据工作经验描述搭建测试环境的过程,那么你就需要在实际项目经验的基础上,结合自己的知识储备,然后再有针对性的组织语言去迎合当前面试公司的要求。
这么说可能会有些不太明白,我们来看几个具体实例。
实 例
面试官:所以Linux系统你是会用的对吧?具体操作步骤能简单描述一下么?你们一般会安装一些什么服务?
(他会根据你的描述挑出来他感兴趣的点来细化的问你,比如一些具体的知识细节)
这个时候,就需要你回答具体的细节了,考验你的真正实力能力了。
当然,如果遇到自己不是很清楚的,一定不要迎难而上,聪明的引导面试官问你擅长的领域。
比如“这个我不是太清楚,但是我用过另外一个工具,这个工具我比较熟悉” …
面试官:你会自己独立搭建测试环境么?你以前公司测试需要自己搭建测试环境么?
你:我们原来公司都是测试人员自己搭建测试环境的,因为这样子的后期的支持维护会比较方便一些,而且整个项目的测试工作也能比较自主独立的进行。
(首先,肯定的回答了问题,告知你是会搭建测试环境的,而且也表达了你认为测试人员会搭建测试环境的必要性)。
我们一般会在拿到测试需求的时候,根据需求先把准备环境好。
因为我上一家公司是一家防火墙公司,有自己的设备,也有相应的web应用和APP,所以我会同时测试这些前端应用以及防火墙设备服务。
(先去着重介绍一下公司的业务类型以及自己的测试的产品,方便后面讲环境搭建的重点,这个地方可以根据自己的实际情况而定)。
所以准备这样的测试环境,我们会需要准备两台Linux服务器分别模拟客户端和后端服务器,搭建好测试拓扑,配通网络就可以。
(表达出网络基础配置能力你是具备的)
然后Linux系统我们一般也会自己安装,而且还要准备好相应的服务。
(表达出Linux系统的操作和常用服务搭建也是OK的)
然后我们会用客户端模拟一些用户流量,也会在Windows上安装一些常用的测试工具来模拟用户数据来测试产品。
(常用测试工具也是没有问题的)
这样最初的测试环境搭建基本就完成了。
总 结
总而言之,面试官问你这样的问题,一方面是想考察你的技术能力,另一方面也想考察你的表达能力。
如果发现很多知识领域自己都有涉猎,但是回答的时候不知道从哪里开始,那就根据自己的经验和实际情况,时常总结和沉淀,梳理自己的知识体系。
所以,大家可以对照一下上面列出来的知识点,如果感觉自己的知识储备不足,可以趁面试之前好好补习一下。
最后为方便大家学习测试,特意给大家准备了一份13G的超实用干货学习资源,涉及的内容非常全面。
包括,软件学习路线图,50多天的上课视频、16个突击实战项目,80余个软件测试用软件,37份测试文档,70个软件测试相关问题,40篇测试经验级文章,上千份测试真题分享,还有2021软件测试面试宝典,还有软件测试求职的各类精选简历,希望对大家有所帮助……
关注我公众号:【程序员二黑】即可获取这份资料了!
如果你不想再体验一次自学时找不到资料,没人解答问题,坚持几天便放弃的感受的话,可以加入我们的群:785128166 大家一起讨论交流,里面也有各种软件测试资料和技术交流。
推荐阅读
以上是关于腾讯面试官:“ 搭建过测试环境吗 ”,没想到我是这样回答的...的主要内容,如果未能解决你的问题,请参考以下文章
腾讯面试官精选的 27道 Handler 面试题(内含参考答案)