由于遇到一个系统使用的数据源是JNDI,因此需要编写测试用例,希望对需要的人有用,给自己也留个记录。
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
import org.h2.jdbcx.JdbcConnectionPool;
import junit.framework.TestCase;
public class JunitDataSource extends TestCase {
public void setUp() throws Exception {
// rcarver - setup the jndi context and the datasource
try {
// Create initial context
System.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.apache.naming.java.javaURLContextFactory");
System.setProperty(Context.URL_PKG_PREFIXES, "org.apache.naming");
InitialContext ic = new InitialContext();
ic.createSubcontext("java:");
ic.createSubcontext("java:/comp");
ic.createSubcontext("java:/comp/env");
ic.createSubcontext("java:/comp/env/jdbc");
JdbcConnectionPool ds = JdbcConnectionPool.create(
"jdbc:h2:file:src/main/resources/test.db;FILE_LOCK=NO;MVCC=TRUE;DB_CLOSE_ON_EXIT=TRUE", "sa", "sasasa");
// Construct DataSource
// OracleConnectionPoolDataSource ds = new
// OracleConnectionPoolDataSource();
// ds.setURL("jdbc:oracle:thin:@host:port:db");
// ds.setUser("MY_USER_NAME");
// ds.setPassword("MY_USER_PASSWORD");
ic.bind("java:/mydatasourcename", ds);
} catch (NamingException ex) {
Logger.getLogger(JunitDataSource.class.getName()).log(Level.SEVERE, null, ex);
}
}
public void testSimple() throws Exception {
// Obtain our environment naming context
Context initCtx = new InitialContext();
// Look up our datasource
DataSource ds = (DataSource) initCtx.lookup("java:/mydatasourcename");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
ResultSet rset = stmt.executeQuery("SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES");
while (rset.next()) {
System.out.println("<<<\t"+rset.getString("TABLE_NAME"));
}
}
}
转载于:https://my.oschina.net/u/165676/blog/402709
分享到:
相关推荐
本文将深入探讨“数据源性能测试用例”,重点关注C3P0和Druid这两个流行的数据库连接池技术。 一、数据源性能测试的意义 数据源性能测试旨在评估数据库连接池在高并发、大数据量场景下的表现,如响应时间、吞吐量、...
本资源摘要信息涵盖了自动化测试面试的各个方面,包括测试用例和测试计划的编写、自动化测试工具的用途、QTP 的实现功能测试、测试计划的设计、测试用例的设计、技术和业务的重要性、测试数据的存储、Web 中的 ...
1. 英文测试用例和测试计划的编写:测试用例和测试计划是软件测试的重要组成部分。测试用例详细描述了如何执行特定的测试步骤,包括预期的结果,以验证软件功能是否符合需求。测试计划则涵盖了整个测试活动的策略,...
6. **测试与调试**:编写测试用例来验证JNDI调用DLL的功能是否正常。确保所有的调用逻辑和参数传递都是正确的。 在提供的`demo`文件中,可能包含了一个完整的示例项目,包括Java代码、配置文件以及可能的测试用例。...
"all"可能表示该压缩包包含了所有相关的组件或测试用例。 描述中的内容与标题相同,没有提供额外的信息,但我们可以推测这可能是一个研究、教育或安全审计用途的工具包,用于理解和防范JNDI注入攻击。 标签"java ...
【标题】"DirSyncJNDI:通过使用JNDI测试DirSync" 是一个与Java相关的项目,旨在利用Java Naming and Directory Interface (JNDI)进行目录同步操作。JNDI是一个API,它为Java应用程序提供了查找和访问各种命名和目录...
9. **Web安全**:包括XSS(跨站脚本攻击)、CSRF(跨站请求伪造)、SQL注入等,测试人员需要识别这些漏洞并编写测试用例以防止它们。 10. **性能测试**:使用工具如JMeter或LoadRunner,模拟大量并发用户,测试Web...
这些示例可能涵盖了如何创建消息生产者和消费者,如何配置ActiveMQ连接工厂,以及如何编写测试用例来验证消息传递的正确性。 总的来说,Spring与JMS和ActiveMQ的结合,为企业级应用提供了可靠且可扩展的消息传递...
在熟练掌握基础操作后,用户可以通过构建不同类型的测试用例来执行具体的测试,例如Web应用测试、JDBC测试、FTP测试和JNDI测试。测试计划中的各种配置,如定时器、监听器、断言等元素的配置,对于测试的成功执行至关...
在"simpleJndi-test"中,我们可以看到与JNDI相关的测试用例。JNDI主要用于应用程序查找和绑定数据,如数据库连接池、邮件服务器配置等。通过JNDI,开发者可以将应用程序的配置信息从代码中分离,方便管理和更新。 2...
JMeter还提供了一个用户手册,用于引导用户熟悉JMeter的基础知识,以及如何构建特定类型的测试用例,如Web测试计划、JDBC测试计划、FTP测试计划等。 JMeter的入门学习可以分为几个步骤:首先下载并安装JMeter,然后...
8. **单元测试和集成测试**:为了保证系统的稳定性和正确性,开发者需要编写测试用例,利用JUnit或Mockito等工具进行单元测试,验证单个功能的正确性;而集成测试则是检查各个模块间的协同工作。 9. **版本控制系统...
xspec是XSLT的单元测试框架,它提供了编写XML格式的测试用例和验证XSLT转换结果的能力。Maven插件的目的是简化这个过程,使得开发者能够在构建生命周期中无缝地执行xspec测试,确保XSLT转换代码的质量和稳定性。 ...
`Test_jta2`这个文件可能是测试代码的一部分,可能包含了设置多数据源、配置JTA环境、模拟事务操作以及异常处理的测试用例。通过分析这个文件,我们可以更深入地了解实际的实现细节。 总之,多数据源事务处理是复杂...
在项目中的"src"目录可能包含测试用例的Java代码,而"lib"目录则包含了这些连接池库的依赖。测试代码可能使用了JUnit或其他测试框架,通过执行特定的查询、事务操作来模拟真实应用的负载,然后收集并分析结果,以便...
这个项目可能包括了`pom.xml`文件(Maven配置),`src/main/webapp/META-INF/context.xml`(应用的上下文配置),以及相关的Java源代码和测试用例。 在实际开发中,你可能还需要考虑以下几点: 1. **连接池配置**:...
Spring3.0是Spring在积蓄了3年之久后,隆重推出的...17.9.2 编写ForumManageController测试用例 17.10 部署和运行应用 17.11 小结 以下内容详见本书配书光盘: 附录A JavaMail发送邮件 附录B 在Spring中开发Web Service
Spring3.0是Spring在积蓄了3年之久后,隆重推出的...17.9.2 编写ForumManageController测试用例 17.10 部署和运行应用 17.11 小结 以下内容详见本书配书光盘: 附录A JavaMail发送邮件 附录B 在Spring中开发Web Service