CassandraUnit是一個Cassandra數據操作的單元測試框架,其功能與關系型數據庫測試框架DBunit類似,只是其測試對象是Cassandra。
下面是一個最簡單使用例子:創建一個用于存儲數據的xml文件,命名為 simpleDataSet.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<keyspace xmlns="http://xml.dataset.cassandraunit.org">
<name>beautifulKeyspaceName</name>
<columnFamilies>
<columnFamily>
<name>beautifulColumnFamilyName</name>
<row>
<key>key10</key>
<column>
<name>name11</name>
<value>value11</value>
</column>
<column>
<name>name12</name>
<value>value12</value>
</column>
</row>
<row>
<key>key20</key>
<column>
<name>name21</name>
<value>value21</value>
</column>
</row>
</columnFamily>
</columnFamilies>
</keyspace>
然后再創建一個單元測試類,繼承自AbstractCassandraUnit4TestCase
package org.cassandraunit;import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.notNullValue; import static org.junit.Assert.assertThat;
import org.cassandraunit.dataset.IDataSet; import org.cassandraunit.dataset.xml.ClassPathXmlDataSet; import org.junit.Test;
public class AutomaticallyStartAndLoadSimpleDataSetTest extends AbstractCassandraUnit4TestCase {
@Override public IDataSet getDataSet() { return new ClassPathXmlDataSet("simpleDataSet.xml"); } @Test public void shouldHaveLoadASimpleDataSet() throws Exception { assertThat(getKeyspace(), notNullValue()); assertThat(getKeyspace().getKeyspaceName(), is("beautifulKeyspaceName")); }}</PRE>
Apache Cassandra是一套開源分布式Key-Value存儲系統。它最初由Facebook開發,用于儲存特別大的數據。Facebook目前在使用此系統。
DbUnit 使您可以容易地執行 JDBC 查詢并獲取它們的值。使用 DbUnit JDBC 包裝器而不是純粹的 JDBC 有幾個理由:
- 可以用 SQL 查詢創建一個
Dataset,并使用 DbUnit 的 assertion(斷言)方法(在后面描述)。 - 可以用 SQL 查詢創建一個
Dataset,并將它保存為一個FlatXmlDataSet。可以在以后將它重新裝載到數據庫中。 - 可以容易地從任何行中獲取列的內容,無需進行迭代。 </UL>
<DIV class=date>收錄時間:2011-08-11 21:08:37</DIV>
本文由用戶 碼頭工人自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!