① 生产数据库、开发数据库、测试数据库中的数据的区分
可以这样简单理解:
生产数据库:业务实际使用的数据库
开发数据库:供系统开专发人员使属用,模拟生产环境去编写程序和检验程序
测试数据库:测试人员对开发出来的系统,进行测试所使用的数据库,数据环境需要和生产数据库尽可能保持一致
② 如何将生产库的数据导入到测试库
1 如果 测试和生产环境下 的db 版本一致的话 ,可以直接 拷贝数据文件 ,从测试环境/var/lib/mysql
拷贝到/usr/local/mysql 下面,重新执行 chown +R mysql:mysql /usr/local/mysql 即可
2 如果 db 版本不一样,就需要使用逻辑导出,并且重新配置一下 用户权限了。
③ 软件开发数据库如何进行测试
比如:数据冗余,功能和性能方面存在的问题已经严重影响应用软件的使用。软件测试人员往往重视对软件功能和编码的测试,而忽略对软件性能,特别是数据库访问并发测试。因为,他们固有的思想中认为数据库设计存在问题对系统性能影响不大,或从根本上忽略了数据库在软件开发中的地位,直到出现了问题,才想到对数据库的测试,但往往也是仅仅通过对编码的测试工作中捎带对数据库进行一定的测试,这远远是不够的。目前,中铁网上订票系统在大用户同时在线订票中系统频频瘫痪,就是最好的佐证。 所以,在应用软件的测试工作中,应该将数据库作为一个独立的部分进行充分的测试,这样才可以得到应用软件所需要的性能优化的数据库。那么,应该对哪些内容进行测试,如何进行测试呢? 2、数据库设计的测试 数据库是应用的基础,其性能直接影响应用软件的性能。为了使数据库具有较好的性能,需要对数据库中的表进行规范化设计。规范化的范式可分为第一范式、第二范式、第三范式、BCNF范式、第四范式和第五范式。一般来说,逻辑数据库设计应满足第三范式的要求,这是因为满足第三范式的表结构容易维护,且基本满足实际应用的要求。因此,实际应用中一般都按照第三范式的标准进行规范化。但是,规范化也有缺点:由于将一个表拆分成为多个表,在查询时需要多表连接,降低了查询速度。故数据库设计的测试包括前期需求分析产生数据库逻辑模型和后期业务系统开发中的测试两部分(这里指的是后者),我在这里称为实体测试。 数据库是由若干的实体组成的,包括(表,视图,存储过程等),数据库最基本的测试就是实体测试,通过对这些实体的测试,可以发现数据库实体设计得是否充分,是否有遗漏,每个实体的内容是否全面,扩展性如何。 实体测试,可以用来发现应用软件在功能上存在的不足,也可以发现数据冗余的问题。经过测试,测试人员对有异议的问题要及时和数据库的设计人员进行沟通解决。 3、数据一致性测试 在进行实体测试后,应进一步检查下面的内容以保障数据的一致性: 3.1 表的主键测试根据应用系统的实际需求,对每个表的主键进行测试,验证是否存在记录不唯一的情况,如果有,则要重新设置主键,使表中记录唯一。 3.2 表之间主外键关系的测试数据库中主外键字段在名称,数据类型,字段长度上的一致性测试。 3.3 级联表,删除主表数据后,相应从报表数据应同时删除的问题例如学生表和学生成绩表,学生数据已经删除,成绩表中相应学生的成绩记录应同时删除。 3.4 存储过程和触发器的测试存储过程可以人工执行,但触发器不能人工处理,所以在对存储过程和触发器执行的过程中针对SQL SERVER2005及以上版本可以使用Microsoft SQL Server Profiler性能测试工具进行测试。 Microsoft SQL Server Profiler 是 SQL 跟踪的图形用户界面,用于监视数据库引擎或 Analysis Services 的实例。测试人员可以捕获有关每个事件的数据并将其保存到文件或表中供以后分析。例如:可以对生产环境进行监视,了解哪些存储过程由于执行速度太慢影响了性能。 4、数据库的容量测试 随着数据库系统的使用,数据量在飞速增长,如何在使用前对数据容量的增长情况进行初步估算,为最终用户提供参考,这在数据库使用和维护过程中,是非常重要的。可以通过对数据库设计中基本表的数据大小,和每天数据表的数据产生量进行初步估算。 记录数据量=各个字段所占字节数的总和表的数据量=记录数据量*记录数数据库大小=各表数据量的总和 当然,数据库的大小不仅仅只是基本表的大小,还有系统表,视图,存储过程等其它实体所占的容量,但最基本的数据是表的数据。另外,数据库的容量还包括数据库日志文件的容量,一般应预留数据库文件的2倍左右。 5、数据库的性能测试 应用软件除了功能外,很重要的一部分就是软件的性能,而对于数据库系统,数据库性能的好坏会直接影响应用软件的性能,这部分的测试,一般手工测试就显得无能为力了,这时就要借助自动化的测试软件,例如:DataFactory,DataFactory是一种强大的数据产生器,它允许开发人员和测试人员很容易产生百万行有意义的正确的测试数据库,该工具支持DB2、Oracle、Sybase、SQL Server数据库。这样,就可以模拟出应用软件长期使用后,海量数据存储的数据库的性能状况。从而尽早发现问题,进行数据库性能的优化。 这里要注意,进行性能测试的时候,一定要注意测试环境的一致性,包括:操作系统、应用软件的版本以及硬件的配置等,而且在进行数据库方面的测试的时候一定要注意数据库的记录数、配置等要一致,只有在相同条件下进行测试,才可以对结果进行比较。否则无法和用户对软件的性能的观点达成一致。 6、数据库的压力测试 说起测试,我们首先想到的就是软件正确性的测试,即常说的功能测试。软件功能正确仅是软件质量合格指标之一。在实际开发中,还有其它的非功能因素也起着决定性的因素,例如软件的响应速度。影响软件响应速度的因素有很多,有些是因为算法不够高效;还有些可能受用户并发数的影响。 在众多类型的软件测试中,压力测试正是以软件响应速度为测试目标,尤其是针对在较短时间内大量并发用户的访问时,软件的抗压能力。但压力测试往往是手工难以测试的,必须借助自动化测试工具。常用的压力测试有:Web测试、数据库测试等。 数据库在大多数软件项目中是不可缺少的,对于它进行压力测试是为了找出数据库对象是否可以有效地承受来自多个用户的并发访问。这些对象主要是:索引、触发器、存储过程和锁。通过对SQL语句和存储过程的测试,自动化的压力测试工具可以间接的反应数据库对象是否需要优化。 这些自动化的测试工具很多,各有特点,基于Java的项目可以使用JMeter,.Net项目可以采用.Net集成开发环境中提供的测试方案。 7、结束语 总之,在应用系统的测试中,把数据库应当作为独立的系统来测试,这无疑会为应用软件的质量增加可靠的保障,同时还必须结合应用软件进行集成测试,只有二者有机结合起来,才能最大限度的发挥数据库和应用软件的功能。
④ 软件测试后,数据在哪看
1、全局的参数,如主机地址、数据库地址、账号密码等,都可以写在配置文件里面;
2、一次性消耗的数据可以随机函数生成;
3、对于反复使用的数据可以放到数据库,每次使用时记得恢复环境;
4、多组测试数据可以使用参数化,放到yaml,text,json,excel中都可以
⑤ sap生产环境的数据库备份可以直接导入到测试环境吗不用建立库结构或者表结构吗
不能,如果要导入的是一个数据库的全部数据,可以直接导入, 不过要是很多数据库的数据的话,要直接导入得一个个来,更麻烦。
⑥ 测试环境数据库yydbtest实际上等于生产的哪些数据库
可以这样简单理解:
生产数据库:业务实际使用的数据库
开发数据库:供系统开发人员使用,模拟生产环境去编写程序和检验程序
测试数据库:测试人员对开发出来的系统,进行测试所使用的数据库,数据环境需要和生产数据库尽可能保持一致
我们现在用的解决方案是,写个package,实现数据的同步更新过,每15分钟执行一次,同步更新上意个15分钟内的transaction!
小型及一般数据量级的使用MySQL;
中型及大型的可以使用Oracle和DB2 for Linux的版本。
层次数据库管理系统:IMS
网状数据库管理系统:DBTG
oracle 数据库怎么从测试数据库迁移正式
方法1:移植实用程序(Migration Utility)
方法2:Oracle 数据移植助理(Oracle data Migration Assistant)
方法3:导入/导出工具(Export/Import)
update-database 加一个-script 参数, 这样就会生成一个更新脚本, 放到服务器上执行就可以了
不过对于数据的冲突还是要手动进行修复
比如你重新命名了一个列, 那么要在代码中告诉EF怎么处理, 否则的话它生成的脚本会删除原来的列, 然后重新建一个列,这样数据就丢了
1数据库 2数据库管理系统 3支持数据库运行的硬、软件环境 4应用程序
5数据库管理员
你在说什么
现在在家没有现成的代码,大概是这样的
conn.open();
if conn.State <> 1 连接不正常
MessageBox.Show( "连接不正常 ");
用户在购买完RDS后,接下来就可以开始往RDS迁入数据了。在RDS刚刚对外提供服务的时候,用户只能通过将自己的数据库mp成为sql文件,然后再将sql文件source到RDS中去:数据迁移至RDS-MySQL之使用MySQLmp工具,数据迁移至RDS-SQLserver之利用SQL Server客户端工具,这两种方法是最简单的方法,但是局限性也非常的多:
.用户的数据库太大了,逻辑sql导入的方式速度太慢了,严重影响停机时间;
.在导入的过程中报错很多,或者导入一半的过程中中断了,需要重新来过;
.在迁入RDS过程中,希望我的数据库还能能正常提供服务;
大量的用户入云全部堵在迁移数据上面,用户与RDS的缘分就差么这临门一脚。工欲善必先利其器,为了更好的帮助用户入云,RDS对现有的用户入云迁移方式进行改进,帮助用户快速稳定迁移入云,分别为用户提供了mysql和sqlserver两套改良迁移工具:
.mysql迁移工具支持在线迁移,用户可以不中断业务的情况下把数据迁移到RDS中来;
.sqlserver的迁移工具采用物理备份的方法,将用户的物理备份上传到FTP中后还原到RDS,提升迁移的速度;
这两套工具目前都已经集成到了RDS的控制台中,可以参考:数据迁移至RDS-MySQL之使用阿里云控制台和 数据迁移至RDS-SQLserveru阿里云控制台.
很多用户在控制台上看到的只是一个黑盒子,在工单中多次咨询迁移的原理,在这里大致讲一下这两个工具的迁移实现:
Mysql在线迁移的原理:
第一步:预检查,主要是验证用户网络的通畅性,账号和环境的检查;
第二步:全量备份,该步骤会把用户的数据全量的mp出一份出来,然后还原到RDS;
第三步:增量迁移,该步骤会解析用户全量期间以及后续产生的binlog应用到RDS;
第四步:切换,当RDS的数据完全追上用户的数据库后,用户就可以开始进行切换了;
Mysql的在线迁移工具目前还有一些限制,比如:
mysql 5.0只支持全量迁移,不支持增量迁移;
不支持mysql5.6的迁移;不支持存储过程,触发器的迁移;
迁移过程中如果有ddl发生则会导致增量迁移失败;
SQLSERVER工具迁移的原理:
第一步:备份用户对本地数据库进行物理备份;
第二步:备份上传至RDS提供的ftp服务器上(ftp地址支持私网和公网上传);
第三步:RDS扫描校验用户上传备份文件通过后,恢复至用户RDS;
第四步:用户切换应用至RDS;
由于sqlserver目前还没有开放日志接口,所以RDS目前还不能支持在线迁移;
RDS目前不支持master库的导入。
希望这篇文章对你使用RDS有帮助。
⑦ 如何搭建测试环境
测试环境是QA开展测试工作的前置条件。稳定和可控的测试环境,可以使测试人员在执行测试用例时无需花费额外的时间去维护。有些公司运维或者研发部门会帮忙准备好测试环境,但是QA如果一味依赖其他部门,会局限测试工作的开展。
一、什么是测试环境
测试环境,指为了完成软件测试工作所必需的计算机硬件、软件、网络设备、历史数据的总称,简而言之,测试环境=硬件+软件+网络+数据准备+测试工具。
硬件:指测试必需的服务器、客户端、网络连接等辅助设备。
软件:指测试软件运行时的操作系统、数据库及其他应用软件。
网络:指被测软件运行时的网络系统、网络结构以及其他网络设备构成的环境等。
数据准备:一般指测试数据的准备。测试数据会在测试用例设计的阶段设计好,然后软件运行的时候,作为软件输入去验证软件功能。如果是少量、正常的测试数据,可以直接通过手动方式模拟出来,如果是大量的用户数据的模拟,可以借助测试工具来构建。
测试工具:工具是辅助测试的好帮手,针对将要做的测试类型,可选择合适的工具让我们的测试事半功倍。比如接口测试,可以选择Jmeter或者postman;抓包工具,可以选择fiddler,wireshark等。
二、搭建测试环境的原则
1. 真实
要求测试人员尽量模拟用户的真实使用环境。我们应该选用合适的操作系统和软件平台,了解符合测试软件运行的最低要求及用户使用的硬件配置,考虑到与其他软件共存时,是否能正常运行等。
2. 无毒
若搭建的测试环境感染病毒,会导致测试软件经常出现莫名的崩溃,运行不起来等现象,导致测试中断。使用正版杀毒软件防止病毒感染测试环境,保证无毒环境。
3. 独立
测试过程中要确保我们的测试环境独立,避免测试环境被占用,影响测试进度及测试结果。有时开发人员为确定问题会使用我们的测试环境,这样会打乱我们的测试活动。为避免这种情况,测试环境与开发环境应相互独立,开发人员根据缺陷表单,在开发环境中复现和定位问题。
4. 可复用
当我们刚搭建好测试环境,安装测试软件之前及测试过程中,对操作系统及测试环境进行备份是必要的。在当测试环境遭到破坏时,可以恢复测试环境,避免测试数据丢失,出现不可预知的问题。
三、如何搭建测试环境
1.认识LNMT架构
这里主要介绍测试环境服务端的部署。不同公司的服务端部署都不一样。互联网公司比较典型的部署框架LNMT(Linux+Nginx+Mysql+Tomcat)如下图:
浏览器和APP端是通过HTTP协议跟服务器进行交互的。
Nginx,有些公司也用Apache。这是常用的HTTP服务器和反向代理服务器。Nginx是用来提供静态资源的服务,Nginx接收到来自浏览器的请求以后,判断这个请求是否是静态资源(以JS、CSS、HTML、PNG等结尾的静态文件),如果是,则Nginx直接返回相应文件;如果不是静态资源,是动态请求,比如,请求某一个日志的内容,则Nginx会把请求转发给Tomcat来处理。
Tomcat,是处理动态的HTTP请求,调用各种其他服务,完成相应的任务,并返回HTTP响应给Nginx。如果涉及到写日志、读日志等数据相关的操作,就需要对数据库进行读写。另外,由于这些动态请求也会依赖一些第三方服务,比如说要调用支付宝的支付服务,那么它就会再发起一个HTTP请求到支付宝的对外服务器。它处理完整个逻辑之后,就会把相应的内容返回给Nginx,然后由Nginx返回给浏览器。
Mysql数据库,将各种数据有序的管理起来,并对其他应用提供统一的接口和服务。
2. LNMT架构部署
此处主要介绍搭建环境的思路,更详细的配置步骤不再赘述。
1) 申请虚拟机器
申请两台虚拟机A和B,机器A作为Nginx服务器+Mysql服务器;机器B作为2台Tomcat服务器。
2) 在机器A上安装和配置Nginx
下载并安装Nginx
配置环境变量
启动Nginx
3)在机器A上安装Mysql
下载安装包并解压
添加环境变量
初始化数据库
启动Mysql
4)在机器B上部署两台Tomcat
关闭防火墙和selinux
安装jdk环境
下载Tomcat并解压两次,目录不同
两台Tomcat建立软链接
修改其中一台Tomcat的配置文件server.xml,避免端口冲突。server.xml配置的是地址、端口、最大连接数、编译好的应用程序目录等信息
启动Tomcat服务
验证部署成功,即浏览器输入ip地址+端口号能成功访问
5)配置Nginx
配置负载均衡和两个Tomcat的反向代理
检查语法并加载Nginx
验证配置成功
总结
对于测试人员来说,对于这一整个机制需要理解,比如,各个工具的作用是什么,各个配置文件的意义是什么,各块的配置是怎么连起来的。
在搭建测试环境的过程中要多跟开发、运维沟通。测试环境的搭建和维护处在重要的位置,它的好坏直接影响测试结果的真实性和准确性。维护测试环境需要大量的精力,不是一个人能完成的,需要我们大家积极配合。
⑧ 什么是JAVA开发环境,测试环境及生产环境,及它的过程
1、开发环境
顾名思义,开发同学开发时使用的环境,每位开发同学在自己的dev分支上干活,提测前或者开发到一定程度,各位同学会合并代码,进行联调。
2、测试环境
也就是我们测试同学干活的环境啦,一般会由测试同学自己来部署,然后在此环境进行测试。bug修复后,需要发版更新测试环境来回归bug。
3、回归环境
回归bug的环境,其实就是我们的测试环境,在测试环境上测试、回归验证bug。
4、预发布环境
测试环境到生产环境的过渡。测试环境可能会受到一些限制,一些流程或者数据没有测试到,就可以在预发布环境进行验证,从而保证产品上线质量。
预发布环境和生产环境区别:
1)预发环境中新功能为最新代码,其他功能代码和生产环境一致。
2)预发环境和生产环境的访问域名不同。
注意事项:
1)预发布环境一般会连接生产环境的数据库,测试时要注意,以免产生脏数据,影响生产环境的使用。
5、生产环境
即线上环境,用户使用的环境。由特定人员来维护,一般人没有权限去修改。
另外,还有个灰度发布,发生在预发布环境之后,生产环境之前。
生产环境一般会部署在多台机器上,以防某台机器出现故障,这样其他机器可以继续运行,不影响用户使用。灰度发布会发布到其中的几台机器上,验证新功能是否正常。如果失败,只需回滚这几台机器即可。
⑨ linux测试环境怎么搭建
测试环境搭复建步骤制:
1.数据库服务器端测试环境安装步骤:
(1) 选择服务器
(2) 安装操作系统
(3) 安装数据库
(4) 安装杀毒软件
(5) 杀毒
(6) 制作Image文件
(7) 安装软件数据库文件
(8) 进行相关数据库配置
(9) 杀毒
(10) 制作Image文件
2. 应用服务器端测试环境安装步骤:
(1) 选择服务器
(2) 安装操作系统
(3) 安装数据库
(4) 安装杀毒软件
(5) 杀毒
(6) 制作Image文件
(7) 安装软件数据库文件
(8) 进行相关数据库配置
(9) 杀毒
(10)制作Image文件
3. 客户端测试环境安装步骤:
(1) 选择PC机
(2) 安装操作系统
(3) 安装杀毒软件
(4) 安装软件要求的浏览器版本
(5) 测试与应用服务器的链接
(6) 杀毒
(7) 制作Image文件。
⑩ 如何在本地测试mysql数据库文件的网站步骤
最简单的建议先装一个php的集成运行环境(一般都集成了apache和mysql),这类环境比如APMServ或者phpnow,为了设置mysql方便建议再装一个navicat for mysql汉化版,启动apmserv后确认apache运行正常(如果你机器上装上iis可以先停掉iis或者将iis端口由原本的80换成其它的),将php网站放到apache的网站目录,mysql数据库放到mysql的data目录下,运行navicat for mysql检查数据库是不是正常,然后更改php网站下的连接文件中的数据库配置(一般可能名为config.php或者conn.php)