软件测试面试中,被问到“你会搭建测试环境吗”要怎么回答?

导语:很多人在面试软件测试的过程中,经常被问到“你会搭建测试环境吗”面对这样的提问,你知道怎么回答么?
一、如何回答
面试的时候,遇到这样的提问,很多人的都会感觉脑子一下一片空白,或者星星点点,不知道从何说起 。
一方面不知道面试官问这个问题的意图是什么?
也不知道他想得到的答案是什么?
更加不知道该从哪些方面来回答 。
作为一个测试行业从业8年有余的测试人员,我想跟大家分享一些我的经验和看法 。
首先,毋庸置疑的是,面试官问这个问题,想要得到的是你肯定的答案,希望你是一个会搭建测试环境的优秀测试工程师 。
QA不管是做什么类型的测试,最基础的功能测试,需要搭建测试环境;
进阶部分的性能压力测试,对搭建环境的要求更高 。
所以搭建测试环境是优秀测试工程师的必备技能之一,也是QA开展测试工作的前置条件 。
当然有些公司可能会有运维或者研发部门帮忙准备好测试环境,但是QA如果一味依赖别的部门,就会大大的局限测试工作的开展 。
如果别的部门没有时间或者进度滞后,会直接影响到测试工作的进度和效率;
而且测试环境如果不是QA负责维护的,后期扩展业务需要优化测试环境的时候,或者遇到问题要调试的时候,都需要依赖其他部门,会导致测试工作不独立,也会显得测试工作人员不专业 。

软件测试面试中,被问到“你会搭建测试环境吗”要怎么回答?

文章插图
 
二、需掌握知识
了解了QA具备搭建测试环境能力的重要性,那么真正要具备搭建测试环境的能力,需要掌握哪些技能和知识呢?
这就需要我们先知道测试环境是什么 。
测试环境(Testing Environment),是指为了完成软件测试工作所必需的计算机硬件、软件、网络设备、历史数据的总称,简而言之,测试环境=硬件+软件+网络+数据准备+测试工具 。
显而易见,我们要学会搭建测试环境,需要具备这5种的技能和知识 。
所以,我们针对每一个知识领域大家需要掌握的知识点及其深度和广度,给大家做个详细的介绍,希望能给大家作一个指引,知道自己该努力的方向 。
◆ 硬件
一般测试会涉及到的硬件就是计算机系统相关的内容,比如windows系统,linux系统和macOS系统 。
测试环境可以部署在以上任何一种系统上,根据当前被测软件的具体需求而定 。
一般软件的运行平台,可能会更多的在Windows系统上;但是相关服务的搭建,比如软件运行需要交互的服务,或者是软件后台的承载服务,都会在Linux系统上搭建 。
所以Linux系统相关的命令和操作是QA必须要知道而且熟练的 。
Linux系统有很多类型,如centos,Ubuntu,Redhat,Debian等
根据产品的具体需求选择合适的系统就可以 。
另外,我们最好还要知道怎么安装Linux系统,因为在很多公司会给QA提供设备资源,需要QA根据需求在服务器上部署Linux系统 。
这里还需要注意的一点,就是软件运行对硬件的要求 。
通常软件说明书上会明确软件对硬件的需求,比如CPU个数,内存大小,硬盘大小,网卡个数等信息,如果没有明确要求,QA可以跟开发或者产品沟通确认 。
所以,关于硬件这块,需要大家对各种操作系统有所了解,特别是能够操作Linux系统常用命令,能够安装系统,并且配置IP、路由等基础网络(这个在网络部分会再重点讲到),能够在各种系统上安装和搭建常用的服务 。
◆ 软件
包括当前被测的软件以及相关依赖和交互的软件 。
当前被测软件的部署,一般在部署好的Linux系统上安装好服务之后,可以直接在前端通过web或者App访问,后端只要部署完成了,前端的运行还是比较简单的;
依赖和交互的软件,一般是一些支持的软件,比如JDK,Tomcat,数据库等 。
怎么安装部署,大家可以去自行百度,网上相关的教程很多 。
软件测试面试中,被问到“你会搭建测试环境吗”要怎么回答?

文章插图
 
三、需掌握技能
◆ 网络
这个可能是很多测试人员的一个知识盲区 。
网络是一个比较庞大的知识体系,涉及的内容特别多而且复杂 。
所以大家可以优先学习一些跟搭建环境密切相关的网络知识,然后自己再慢慢的去渗透和深造 。
一般公司网络环境,最基本的要求是交换和路由相关的知识 。
比如要自己搭建一个网络拓扑,使用多台网络设备(如服务器,路由交换等中间设备,客户端等) 。


推荐阅读