还原测试环境的两种方法

一、测试环境

数据库:Oracle10g

前台:Dojo

二、恢复测试环境的三种方法:

1、采用虚拟机,将Web应用及数据库都放到虚拟机上,通过快照的方式恢复测试环境(最好)

2、开启数据库的

三、实现方式

1.Ant方式(以编程方式动态调用Ant文件)

 

(1)新建Java文件,内容如下:

package com.neusoft.server;
import java.io.File;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.DefaultLogger;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.ProjectHelper;

/** 
 * <p>Description: [还原数据库]</p>
 * @author  <a href="mailto: xxxx@xxxxxx.com">xxxx</a>
 * @version $Revision$ 
 */ 
public class FlashBack {
	private Project project;
	private File buildFile;
	private ProjectHelper helper;

	/**
	 * <p>Discription:[构造器方法描述]</p>
	 * @coustructor 方法.
	 */
	public FlashBack() {
		buildFile = new File("build.xml");
		project = new Project();
		DefaultLogger consoleLogger = new DefaultLogger();
		consoleLogger.setErrorPrintStream(System.err);
		consoleLogger.setOutputPrintStream(System.out);
		consoleLogger.setMessageOutputLevel(Project.MSG_INFO);
		project.addBuildListener(consoleLogger);
		project.fireBuildStarted();
		project.init();
		helper = ProjectHelper.getProjectHelper();
	}
	
	/**
	 * <p>Discription:[闪回数据库]</p>
	 * @param time
	 * @return
	 * @author:[xxxx]
	 * @update:[日期YYYY-MM-DD] [更改人姓名][变更描述]
	 */
	public boolean flashBack(String time) {
	    //验证时间格式
	    Pattern p = Pattern.compile("\\d{4}-\\d{2}-\\d{2}:\\d{2}:\\d{2}:\\d{2}");  
	    Matcher m = p.matcher(time);  
	    boolean tag = false;
	    if(m.matches())
	    {
	    	try {
				project.setProperty("time", time);
				helper.parse(project, buildFile);
				project.executeTarget(project.getDefaultTarget());
				project.fireBuildFinished(null);
				tag = true;
			} catch (BuildException e) {
				project.fireBuildFinished(e);
				e.printStackTrace();
			}
	    }
		return tag;
	}
}

 

(2)新建Ant文件,内容如下:

 

<?xml version="1.0" encoding="UTF-8"?>
<project name="flashBack" default="startVM" basedir="." xmlns:ora="antlib:net.sf.incanto">
	<!-- 虚拟机镜像文件目录-->
	<property name="vmware.dir" value=" E:\\UbuntuVM\\Ubuntu.vmx">
	</property>
	<!-- 虚拟机快照名称,名称之间不允许包含空格-->
	<property name="snapshot" value="Snapshot3">
	</property>
	<!-- 方式1:通过执行SQL语句还原数据库 -->
	<target name="runSql">
		<ora:sqlplus logon="/NOLOG" silent="true" failοnerrοr="true">
			<![CDATA[
        	--首先以DBA身份连接数据库;
        	conn system/tiger as sysdba;
        	--关闭数据库;
        	shutdown immediate;
        	--进入MOUNT状态;
        	startup mount;
        	--开始闪回数据;
        	flashback database to timestamp  to_date('${time}','yyyy-mm-dd:hh24:mi:ss'); 
        	--打开数据库;
        	alter database open resetlogs;
        	--退出;
        	exit;  
            ]]>
		</ora:sqlplus>
	</target>
	<!-- 方式2:通过调用虚拟机的Vmrun命令,还原虚拟机快照-->
	<target name="revertSnap">
		<exec executable="cmd.exe">
			<arg line="/c vmrun -t ws revertToSnapshot ${vmware.dir} ${snapshot}" />
		</exec>
	</target>
	<target name="startVM" depends="revertSnap">
		<exec executable="cmd.exe">
			<arg line="/c vmrun -t ws start ${vmware.dir}" />
		</exec>
	</target>
</project>

参考资料:

 

以编程方式调用 Apache Ant

 

http://www.ibm.com/developerworks/cn/websphere/library/techarticles/0502_gawor/0502_gawor.html

 

2.批处理方式(描述:使用批处理文件调用SQL文件)

(1)新建FlashBack.bat文件,内容如下:

@echo off 
sqlplus /nolog @runSql.sql

(2)新建runSql.sql文件,内容如下:

--首先以DBA身份连接数据库;
conn system/tiger as sysdba;
--关闭数据库;
shutdown immediate;
--进入MOUNT状态;
startup mount;
--开始闪回数据;
flashback database to timestamp  to_date('2011-08-09:16:53:01','yyyy-mm-dd:hh24:mi:ss'); 
--打开数据库;
alter database open resetlogs;
--退出;
exit;  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
成绩管理系统是高校教务管理工作中的重要组成部分,它能够帮助学校管理学生的各项成绩数据,包括考试成绩、作业成绩、实验成绩等。在进行成绩管理系统测试时,可以使用黑盒测试方法,验证系统的功能和用户需求是否符合预期。 以下是使用黑盒测试进行成绩管理系统测试的步骤: 1. 定义测试目标和测试用例 首先,需要明确测试目标和测试用例。根据成绩管理系统的需求和设计文档,设计出一系列有效的测试用例,覆盖了系统的各个功能模块和各种异常情况。测试用例应该具有可重复性、可测量性、可验证性、可溯源性等特点。 2. 确定测试环境测试数据 在进行黑盒测试时,需要确定测试环境测试数据。测试环境应该与生产环境保持一致,包括硬件、软件、网络等方面。测试数据应该具有代表性,包括正常数据、边界数据、异常数据等。 3. 执行测试用例 按照测试计划执行测试用例,并对测试结果进行记录和分析。测试用例应该尽可能地覆盖系统的各种情况和异常情况,以发现潜在的问题和缺陷。在执行测试用例时,需要记录测试结果、测试时间、测试人员等信息,以便后续分析和跟踪。 4. 分析测试结果和问题 在测试过程中,需要对测试结果进行分析和问题的定位。测试结果分为通过和失败两种情况,如果测试用例通过,则表示系统的功能符合预期;如果测试用例失败,则需要进一步分析失败原因,确定问题的优先级和紧急程度。问题的定位和分析需要结合测试用例和测试数据,以尽可能地还原问题的发生场景。 5. 缺陷管理和跟踪 在测试过程中,需要对测试中发现的问题进行缺陷管理和跟踪,包括问题的描述、定位、原因分析、解决方案等。通过缺陷管理和跟踪,可以有效地解决测试中发现的问题和缺陷,提高系统的质量和可靠性。 6. 总结和建议 在测试过程中,需要对测试结果和经验进行总结,提出改进和优化的建议,以提高系统的质量和可靠性。同时,需要对测试过程中遇到的问题和挑战进行分析和探讨,以及对未来测试工作的展望和建议。 总之,使用黑盒测试方法进行成绩管理系统测试,可以验证系统的功能和用户需求是否符合预期,发现潜在的问题和缺陷,提高系统的质量和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值