测试环境搭建_搭建测试环境是什么意思-程序员宅基地

技术标签: 系统部署  

一、什么是测试环境

测试环境是指测试运行其上的软件和硬件环境的描述,以及任何其它与测试软件交互的软件,包括驱动和桩
测试环境是指为了完成软件测试工作所必需的计算机硬件,软件,网络设备,历史数据的总称
测试环境=软件+硬件+网络+数据准备+测试工具
(硬件和网络一般由公司运维考虑,历史数据由开发或者运维考虑,测试主要做软件的搭建和测试工具的搭建)

二、测试环境的分类

开发环境:开发环境是程序员们专门用于开发的服务器,配置可以比较随意,为了开发调试方便
测试环境:一般是克隆一份生产环境的配置,一个程序在测试环境工作不正常,那么肯定不能把它放到生产机上。
生产环境:是指正式提供服务的,一般会关掉错误报告,打开错误日志。
三个环境也可以说是系统开发的三个阶段:开发–>测试–>上线,其中生产环境也就是通常说的真实环境

三、搭建环境的意义

1、稳定和可控的测试环境,可以是测试人员话费较少的时间就完成测试用例的 执行,也无需为测试用例,测试过程的维护花费额外的时间,并且可以保证每一个被提交的缺陷都可以在任何时间被准确的重现
2、理想环境有利于代码的调试和分析,但测试结果不能视为真实结果
3、掌握搭建测试环境的技能,测试人的综合技能以及薪资能力会有一定程度的提升

四、如何搭建测试环境

1、配置Java环境(下载JDK并配置环境变量)
2、下载并安装配置Tomcat(最后将IDEA或者eclipse的项目打成war包,解压到tomcat目录下的webapp即可)
3、安装mysql并导入sql(注意:mysql客户端和服务端编码设置,必须设置完再导入sql)
4、项目导入并修改数据库连接配置
5、启动mysql,启动Tomcat,访问既可

五、实际操作

在虚拟机上操作为例:
首先环境准备:
Linux jdk tomcat mysql

1、Linux系统
本文以centos7为例
安装方法可以参考:centos7安装方法

虚拟机安装好的CentOS7系统,查看ip时没有ip怎么办呢?
  第一步:打开ens33网卡的配置: vi /etc/sysconfig/network-scripts/ifcfg-ens33
  第二步:把ONBOOT=no改成ONBOOT=yes,如下:
  在这里插入图片描述
  第三步:然后重启网络服务: sudo service network restart

2、JDK下载安装
可以通过官网下载,此文以JDK1.8为例
下载到本地之后,可以使用SFTP等工具上传Linux系统
我的存放到了 /usr/local/tools/ 下,安装工具都放到了这里。

  • 1、使用xshell连接Linux,在/usr/local目录下,执行命令mkdir tools,创建tools目录
  • 2、进到tools查看上传的安装包(如果是压缩包,先进行解压),使用rpm命令安装
    在这里插入图片描述
  • 3、安装好JDK后需要配置环境变量
    进入到/etc目录,执行命令vi profile,进入编辑模式
    在文本末尾添加以下配置项
export JAVA_HOME=/usr/java/jdk1.8.0_131
export JRE_HOME=${
    JAVA_HOME}/jre
export CLASSPATH=.:${
    JAVA_HOME}/lib:${
    JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${
    JAVA_HOME}/bin:${
    JRE_HOME}/bin
export PATH=$PATH:${
    JAVA_PATH}

注意JAVA_HOME的路径是你实际安装在Linux里面目录,查看JDK的安装路径,(一般默认的路径:/usr/java/jdk1.8.0_131)
编辑完后,按ESC退出编辑模式,输入:wq,保存退出
退出之后重启配置项,输入命令source /etc/profile
这个时候可以查看JDK版本,输入java -version
在这里插入图片描述
三、下载安装Tomcat
同样也可以在官网下载
首先进入到/usr/local/tools目录,创建新目录,输入命令mkdir tomcat,
进入到tomcat目录,cd /usr/local/tools/tomcat
使用xftp上传压缩包到Tomcat目录下,然后解压安装包,tar -xzvf apache-tomcat-8.5.41.tar.gz,开始解压
解压完成后,需要重启tomcat,进入到解压后目录下的bin目录,命令cd /usr/local/tools/tomcat/apache-tomcat-9.0.24 /bin
然后输入命令./ startup.sh重启服务
在这里插入图片描述
重启结束后,可以在本地浏览器输入http://ip:8080/,观察是否跳转到tomcat主页,如果有,则安装成功

例如

如果网页打不开或者无响应,可能是8080端口没有开放,这个时候需要开放端口,
输入命令 firewall-cmd --zone=public --add-port=8080/tcp --permanent
重启防火墙 firewall-cmd --reload
到此,输入命令firewall-cmd --zone=public --list-ports 查看端口是否开放,显示有8080便是成功

修改端口的方法:
conf目录下面的server.xml文件,用记事本打开,滚动到下面这个位置,8181就是我的Tomcat的端口号了。当然这些是可以修改的,不过要防止和其他应用的端口发生冲突,尽量使用1024以上的。
双击bin目录下的start.bat文件,开启Tomcat,再在直接浏览器上输入http://localhost:8181/,这里8181的端口号要改成你在server.xml文件下设置的一致才行。
在这里插入图片描述

这样tomcat安装结束

四、MySQL安装

用yum命令安装
1、下载yum源:

mysql常用命令
检查是否已经安装过mysql,执行命令:rpm -qa | grep mysql

删除已经安装了的已经安装了mysql-libs-5.1.73-5.el6_6.x86_64:rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.x86_64

查看端口占用:netstat -tunlp|grep 3306

查询所有Mysql对应的文件夹:whereis mysql
删除相关目录或文件:rm -rf /usr/bin/mysql /usr/include/mysql /data/mysql /data/mysql/mysql 

检查mysql用户组和用户是否存在,如果没有,则创建:
cat /etc/group | grep mysql
cat /etc/passwd |grep mysql
groupadd mysql
useradd -r -g mysql mysql


wget 'https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm'

2、安装yum源

rpm -Uvh mysql57-community-release-el7-11.noarch.rpm

3、查看有哪些版本的mysql:

yum repolist all | grep mysql

4、安装

yum install -y mysql-community-server

5、启动mysql,要知道在centos7中,没有了service命令,都是使用systemctl命令。注意启动的时候是start mysqld而不是mysql。(而在centos6中,使用service mysqld start)

systemctl start mysqld
  • 运行该命令,发现无法启动,然后使用systemctl status mysqld查看状态,提示如图
    在这里插入图片描述
  • 在网上寻得,发现是/var/lib/mysql /这个目标路径已经存在/var/lib/mysql /,导致无法初始化。
    在这里插入图片描述
  • 解决办法:
rm -rf /var/lib/mysql 

然后在使用:

systemctl start mysqld

查看状态

systemctl status mysqld

如图所示,已经成功安装
在这里插入图片描述
6、登录数据库,修改数据库密码
mysql5.7的新特性之一就是在初始化的时候会生成一个自定义的密码,然后你需要找到这个密码,登录的时候输入。注意,输入密码的时候是不显示。
找到密码: 红框的地方就是密码

grep 'temporary password' /var/log/mysqld.log

在这里插入图片描述
登录数据库:这里-p之后不用输入密码,回车后再输入。改过密码之后登录则是直接在-p后加密码了。

  • 如果获取不到密码,vim /var/log/mysqld.log 发现也是空文件,试过一些方式不行,也是决定修改配置文件,跳过密码校验,方法如下:
修改my.cnf文件
vim /etc/my.cnf

添加:
skip-grant-tables 

在这里插入图片描述

重启mysql:
systemctl start mysqld
登录就不需要密码了:
mysql -u root
update mysql.user  set password=password('root') where user='root';

清除并退出
flush privileges;

修改my.cnf,把之前添加的删除保存,并重启mysql,就看一使用密码登录了

mysql -uroot -p

输入日志打印的密码登录到MySQL
修改密码
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘root123’;
如果密码设置太简单出现以下的提示
在这里插入图片描述
这里可以修改两个全局参数:
首先,修改validate_password_policy参数的值
set global validate_password_policy=0;
再修改密码的长度
set global validate_password_length=1;
再次执行修改密码就可以了
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘123456’;
测试修改后的密码,退出MySQL,输入命令root -u root -p123456,看能否登录
在这里插入图片描述
授权其他机器登陆
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;

此处用:GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘123456’;
刷新
FLUSH PRIVILEGES;
至此,MySQL安装完毕
可以在本地用Navicat连接数据库

如果连接不上,查看3306端口是否开放,进入/etc/sysconfig,
安装iptables,输入命令yum install iptables-services
修改该目录下的iptables,在标注的那一行下面添加一样的语句,22改成3306
在这里插入图片描述
添加之后
在这里插入图片描述
然后重启,输入service iptables restart,这样就可以连接数据库

如果提示:
在这里插入图片描述
因为是直接使用 SQL 语句的方式来删除账户,所以必须先选择 mysql 自身的数据库:
use mysql;
在这里插入图片描述
5、安装项目包
将IDEA或者eclipse的项目打成war包,解压到tomcat目录下的webapp即可
具体的操作参考Tomcat部署web项目

解压的方法安装待完善
1、先上传mysql到Linux,我是在tools目录下创建了一个mysql文件,解压到该文件夹下
2、创建用户组和该用户组下的用户
groupadd mysql
useradd -r -g mysql mysql
3、赋权(让该用户组和用户对mysql文件夹具有操作权限)
cd /usr/local/tools/mysql/ 先进到该该文件下
chgrp -R mysql . 用户组赋权
chown -R mysql . 给用户赋权
4、判断/etc/my.cnf文件是否存在,如果存在则删除
ls etc/my.cnf 查看是否存在
存在就删除 rm my.cnf
5、初始化数据库
./scripts/mysql_install_db --user=mysql --datadir=/usr/local/tools/mysql/data/mysql
如果提示没有权限,我是直接给改文件可执行的权限,如图
在这里插入图片描述
如果提示:-bash: ./scripts/mysql_install_db: /usr/bin/perl: 坏的解释器: 没有那个文件或目录
执行:
yum -y install perl perl-devel
yum install -y perl-Data-Dumper
如果提示如图
在这里插入图片描述
网上说使用:/usr/local/tools/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/tools/mysql --datadir=/usr/local/tools/mysql/data

6、复制mysql全局文件,将初始化生成的全局文件,复制到/etc/my.cnf
cp support - file/my-default.cnf /etc/my.cnf
7、复制启动文件
cp support-files/mysql.server /etc/rc.d/init.d/mysql
8、启动mysql服务
service mysql start
9、添加软连接
ln -s /usr/local/tools/mysql/bin/mysql /usr/bin/mysql
10、操作数据库,默认没有密码
mysql -u root -p
11、修改数据库
update user set password=password(‘123456’) where user=‘root’;
12、刷新权限
flush privileges;
13、window连接服务器数据库,连接不上有两个原因

  • 1、没有开放3306端口
  • 2、user表中没有授权’%’
  • GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;
  • 3、刷新
    FLUSH PRIVILEGES;

补充mysql的用到的语法:
跳过密码(在跟目录下的my.ini里面的mysqld 下面加上这句,然后重启服务器)
skip-grant-tables
登录命令
mysql -u root -p
查看用户,地址,密码信息(高版本的使用password)
select user,host,authentication_string from user;
设置可以远程访问
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘123456’;
删除用户
delete from mysql.user where user=‘a1’;
刷新
flush privileges;

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/cc_park/article/details/104154212

智能推荐

c# 调用c++ lib静态库_c#调用lib-程序员宅基地

文章浏览阅读2w次,点赞7次,收藏51次。四个步骤1.创建C++ Win32项目动态库dll 2.在Win32项目动态库中添加 外部依赖项 lib头文件和lib库3.导出C接口4.c#调用c++动态库开始你的表演...①创建一个空白的解决方案,在解决方案中添加 Visual C++ , Win32 项目空白解决方案的创建:添加Visual C++ , Win32 项目这......_c#调用lib

deepin/ubuntu安装苹方字体-程序员宅基地

文章浏览阅读4.6k次。苹方字体是苹果系统上的黑体,挺好看的。注重颜值的网站都会使用,例如知乎:font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Microsoft YaHei, Source Han Sans SC, Noto Sans CJK SC, W..._ubuntu pingfang

html表单常见操作汇总_html表单的处理程序有那些-程序员宅基地

文章浏览阅读159次。表单表单概述表单标签表单域按钮控件demo表单标签表单标签基本语法结构<form action="处理数据程序的url地址“ method=”get|post“ name="表单名称”></form><!--action,当提交表单时,向何处发送表单中的数据,地址可以是相对地址也可以是绝对地址--><!--method将表单中的数据传送给服务器处理,get方式直接显示在url地址中,数据可以被缓存,且长度有限制;而post方式数据隐藏传输,_html表单的处理程序有那些

PHP设置谷歌验证器(Google Authenticator)实现操作二步验证_php otp 验证器-程序员宅基地

文章浏览阅读1.2k次。使用说明:开启Google的登陆二步验证(即Google Authenticator服务)后用户登陆时需要输入额外由手机客户端生成的一次性密码。实现Google Authenticator功能需要服务器端和客户端的支持。服务器端负责密钥的生成、验证一次性密码是否正确。客户端记录密钥后生成一次性密码。下载谷歌验证类库文件放到项目合适位置(我这边放在项目Vender下面)https://github.com/PHPGangsta/GoogleAuthenticatorPHP代码示例://引入谷_php otp 验证器

【Python】matplotlib.plot画图横坐标混乱及间隔处理_matplotlib更改横轴间距-程序员宅基地

文章浏览阅读4.3k次,点赞5次,收藏11次。matplotlib.plot画图横坐标混乱及间隔处理_matplotlib更改横轴间距

docker — 容器存储_docker 保存容器-程序员宅基地

文章浏览阅读2.2k次。①Storage driver 处理各镜像层及容器层的处理细节,实现了多层数据的堆叠,为用户 提供了多层数据合并后的统一视图②所有 Storage driver 都使用可堆叠图像层和写时复制(CoW)策略③docker info 命令可查看当系统上的 storage driver主要用于测试目的,不建议用于生成环境。_docker 保存容器

随便推点

网络拓扑结构_网络拓扑csdn-程序员宅基地

文章浏览阅读834次,点赞27次,收藏13次。网络拓扑结构是指计算机网络中各组件(如计算机、服务器、打印机、路由器、交换机等设备)及其连接线路在物理布局或逻辑构型上的排列形式。这种布局不仅描述了设备间的实际物理连接方式,也决定了数据在网络中流动的路径和方式。不同的网络拓扑结构影响着网络的性能、可靠性、可扩展性及管理维护的难易程度。_网络拓扑csdn

JS重写Date函数,兼容IOS系统_date.prototype 将所有 ios-程序员宅基地

文章浏览阅读1.8k次,点赞5次,收藏8次。IOS系统Date的坑要创建一个指定时间的new Date对象时,通常的做法是:new Date("2020-09-21 11:11:00")这行代码在 PC 端和安卓端都是正常的,而在 iOS 端则会提示 Invalid Date 无效日期。在IOS年月日中间的横岗许换成斜杠,也就是new Date("2020/09/21 11:11:00")通常为了兼容IOS的这个坑,需要做一些额外的特殊处理,笔者在开发的时候经常会忘了兼容IOS系统。所以就想试着重写Date函数,一劳永逸,避免每次ne_date.prototype 将所有 ios

如何将EXCEL表导入plsql数据库中-程序员宅基地

文章浏览阅读5.3k次。方法一:用PLSQL Developer工具。 1 在PLSQL Developer的sql window里输入select * from test for update; 2 按F8执行 3 打开锁, 再按一下加号. 鼠标点到第一列的列头,使全列成选中状态,然后粘贴,最后commit提交即可。(前提..._excel导入pl/sql

Git常用命令速查手册-程序员宅基地

文章浏览阅读83次。Git常用命令速查手册1、初始化仓库git init2、将文件添加到仓库git add 文件名 # 将工作区的某个文件添加到暂存区 git add -u # 添加所有被tracked文件中被修改或删除的文件信息到暂存区,不处理untracked的文件git add -A # 添加所有被tracked文件中被修改或删除的文件信息到暂存区,包括untracked的文件...

分享119个ASP.NET源码总有一个是你想要的_千博二手车源码v2023 build 1120-程序员宅基地

文章浏览阅读202次。分享119个ASP.NET源码总有一个是你想要的_千博二手车源码v2023 build 1120

【C++缺省函数】 空类默认产生的6个类成员函数_空类默认产生哪些类成员函数-程序员宅基地

文章浏览阅读1.8k次。版权声明:转载请注明出处 http://blog.csdn.net/irean_lau。目录(?)[+]1、缺省构造函数。2、缺省拷贝构造函数。3、 缺省析构函数。4、缺省赋值运算符。5、缺省取址运算符。6、 缺省取址运算符 const。[cpp] view plain copy_空类默认产生哪些类成员函数

推荐文章

热门文章

相关标签