1 技术需要积累
前几天去一位笛友小赖家玩,才知道他的笛子吹得好不是偶然。是因为他真的用功了,电脑里面下载有超多的视频、教程等!这真的很让我震撼!一直是在公司做技术,但资料考不出来,而我整理了多少技术资料呢?
所以,有了把这些天用到的数据库测试工具 SQLUnit 搭建环境和简单使用方法整理出来的想法。没准以后又会再用得到呢~
2 环境要求
环境快速搭建
1. SQLUnit
2. Apache Ant
Apache Ant入门示例
3. Java
3 编译
进入 SQLUnit 根目录
// 编译成发布版的 jar 文件
ant install
ant test
4 MySQL 连接测试示例
参照 sqlunit-5.0/test/mysql/README 说明。由于 MySQL 不支持存储过程,以下测试,均是演示非存储过程的测试。
4.1 建立数据库
create database sqlunitdb;
use sqlunitdb;
4.2 编辑连接信息
编辑 sqlunit-5.0/test/mysql/connectiontest.xml 中,修改成正确的用户名和密码。
4.3 拷贝测试目标到根目录
cp connectiontest.xml ../../
4.4 执行
ant -Dlog.format=canoo -Doutput.file=demotest.xml -Dtestfile=connectiontest.xml sqlunit-flat canoo2html
测试结果将生成为 xml 和 html 文件,例如 html 的显示结果如下图所示:
5 问题及解决
5.1 Problem: failed to create task or type sqlunit. Cause: The name is undefined.
不应该在 build.xml 中增加测试目标,当时我采用的方式是在 build.xml 中添加了如下测试目标,调用时出现了错误。
<!-- 测试 MySQL 数据用例 -->
<target name="mysql-connection-test">
<sqlunit testfile="test/mysql/connectiontest.xml"
haltOnFailure="false" debug="false" />
</target>
正确执行测试的方式,应该是在 build.xml 目录下,放置测试的 xml 文件,然后执行生成测试 html 结果的文件方式,即可。
5.2 BUILD FAILED 无法编译样式表
修改 canoo2html_result_transform.xsl 文件。注释第二行引用到的 TestResults.xsl 文件。
5.3 com.mysql.jdbc.Driver not found in specified Context
将 mysql 的连接库放到 lib 文件夹即可。例如,直接将 mysql-connector-java-5.1.12-bin.jar 文件拷贝到 lib 文件夹中。