当前位置:首页 > 技术文章 > 正文内容

软件测试的环境部署怎么做?

arlanguage4个月前 (01-11)技术文章34

环境搭建对于测试人员而言是一个需要掌握的知识点。主要原因是处于下面这两点考虑:

在面试中,测试人员会经常被问到你所测试项目的环境是怎么部署的

在实际工作中,测试人员可能也会面临自己部署测试环境的场景

若是面试官问环境搭建问题,千万不要只回答是运维人员部署,这显然不是面试官所想听的答案。面试官考察的主要是两个方面:

1.考量的是面试者是否熟悉自己所经历项目环境

2.对于服务器运行的常识知识是否理解到位

所以无论是面试还是实际工作中的应用,都需要会真正的懂得环境搭建,下面就来介绍:

一、先来看下项目运行成功的的示意图

软件系统如果需要很好的运行,离不开一套稳定可靠的环境。环境搭建主要就是搭建服务端。一般企业的环境搭建示意图如下所示:

因为一般公司环境搭建普遍使用LNMP【L代表linux,N代表nginx,M代表mysql,P代表PHP】,上面的示意图,我们可以简化成一张更简单的示意图,如下所示:

客户端:用户使用者的入口终端,比如网站,手机app

服务端:给用户提供应用服务的终端(也是环境部署的核心端)

注意事项:

上图是通过一台服务器上安装运行所需所有服务来熟悉环境部署

实际企业中往往多将不同的应用服务部署到不同的服务器上形成服务器的集群(从安全稳定性考虑),其本质部署过程原理都是一样的

软件测试的环境部署怎么做?

二、来看下服务器作用

上图中的Linux就是服务端,是我们在使用软件产品的时候很少会接触到的。所以为避难大家对他的陌生,在此我们来简单介绍下服务器。

服务器本身可以理解为一些高配置的电脑,并且有专业的服务器操作系统(一般是linux系统)。为了给用户提供高效的服务,需要在服务器上安装许多应用服务(可以理解为一些应用软件),而这些应用服务之间往往协同工作,以实现用户特定的目的。

在实际项目中,不同的项目往往会根据需求选择不同的应用服务,但是常见应用服务的基本作用需要搞清楚。

三、来看下服务器组件

通过上述图能够看出,环境部署其实主要是指服务器对应组件的安装组合使用,即服务端的构成。要想熟悉项目运行的基本原理,可以通过构成服务器基本组件熟悉。

基础骨架:需要有硬件系统和服务器操作系统构成的基础支撑,例如LNMP中的L-Linux ;

数据库应用服务:为用户使用的系统提供数据存储记录的仓库,例如LNMP中的M-Mysql;

web应用服务:为浏览器等客户端提供可视化界面显示及资源转发的应用服务,例如LNMP中的 N-Nginx;

系统语言环境:提供服务的系统所对应开发语言环境组件,例如LNMP中P-Php ;

项目文件包:开发人员编写好的源代码文件包(就是为用户提供服务的软件系统),例如咱们网站的源码,app的源码等…

上述构成服务器的组件能够实现基本测试环境的部署。搭建的顺序一般如下所示(可以给面试官介绍的内容):

前提:一般需要linux的基本技能,因为常见服务操作系统大多是linux系统。

1.安装基础的应用服务,最起码能够在linux服务器上安装成功所需要的数据库服务如mysql、web服务如nginx、开发语言工具包如php等

2.将开发打包好的项目文件包上传到服务器,修改对应web服务及其关联的配置文件(该部分也是关键可以借助部署手册或者企业运维人员),让各个组件能正常运行

3.检查网络路由及地址配置信息,通过客户端验证系统的正确性

四、环境搭建练习纸上得来终觉浅,一定要去练习下。若搭建成功,则无论是未来的工作需要,还是面试问到,心里有底气的多。强列推荐3个环境搭建实战案例(若时间充裕,建议下面3个项目都练习一下):

1.通过LNMP环境部署禅道软件:实战视频-《Linux命令实战之Lnmp搭建禅道测试环境》

2.简历项目_在Linux上部署码云商城项目(推荐)《如何在linux环境中使用Lnmp部署测试项目》

3.黑马突击项目视频_测试环境项目部署实战(推荐)《手把手教你搭建LAMP测试环境部署项目》

五、搭建成功,不要忘记看最后总结学习捷径:

技能的支撑+不断的练习 = “牛X的大神”

首先,搞清楚自己的项目构成组件其次,需要有一定的linux和数据库操作经验第三,对于服务器常见应用服务的构成相对熟悉最后,对于部署过程中细节可以借助网络或者运维人员确定

扫描二维码推送至手机访问。

版权声明:本文由AR编程网发布,如需转载请注明出处。

本文链接:http://www.arlanguage.com/post/773.html

标签: nginx m
分享给朋友:

“软件测试的环境部署怎么做?” 的相关文章

Nginx流控

cnLinuxer 开源Linux 开源Linux专注分享开源技术知识流量限制(rate-limiting),是Nginx中一个非常实用却经常被错误理解和错误配置的功能。我们可以用来限制用户在给定时间内HTTP请求的数量。请求,可以是一个简单网站首页的GET请求,也可以是登录表单的POST请求。流...

Nginx日志切割方法(包含docker容器中nginx日志的切割)

logrotate软件简介logrotate 是一个 Bash 的 SHELL 脚本,可对日志文件进行切分,并将切分后的日志放在统一目录。logrotate 要求 GNU bash、GNU gzip 和 GNU date。logrotate 实用程序旨在简化在生成大量日志文件的系统上对日志文件的管理...

在 Ubuntu 或 Debian 系统上安装以及配置 nginx-1.20.1.tar.gz

安装和配置 Nginx 的步骤如下:下载 Nginx:1、首先,你需要从 Nginx 的官方网站下载源代码包。在你的服务器上执行以下命令,下载 Nginx 1.20.1 版本的源代码包:wget http://nginx.org/download/nginx-1.20.1.tar.gz2、解压源代码...

如何让Nginx后端服务收到真实的客户IP?

背景开发有一个服务部署在阿里云上,依赖阿里云的CLB(传统型负载均衡)暴露服务,因特殊要求,CLB和后端服务之间需要通过自建Nginx做代理,拓扑图如下,应用拓扑操作客户端的请求经过了两层代理,这里CLB和Nginx都要做配置。1,配置CLBCLB的配置比较简单,在配置“监听”时,要附加“X-For...

php高并发的瓶颈到底在哪

php高并发的瓶颈到底在哪?是同步阻塞?还是nginx+fpm不断创建-销毁进程资源过度消耗?高并发到底是什么问题,是语言问题嘛,为什么说php不适合高并发?求大佬指点从2009年后一直用lnmp,从5.2.17一直到现在的PHP7.4,做的项目无数个,大到日IP10W+、PV50W+的平台,小到日...

nginx 解决 readv() failed (104: Connection reset by peer)

查看nginx error错误,发现上传接口报以下错:2019/10/10 19:58:25 [error] 299784#0: *5967188 readv() failed (104: Connection reset by peer) while reading upstream, clien...