1. 程式人生 > >大資料測試資料構造工具

大資料測試資料構造工具

 在效能測試中,我們經常會涉及到測試資料,對於測試資料我們可以為兩種:一種是執行測試用例中使用的測試資料;另一種是在大資料量下測試時需要的測試基礎資料。兩者的主要區別是在於是否會在測試中直接用於測試執行。測試基礎資料可以轉化為測試資料。在這裡主要說明測試基礎資料。

一個系統經常會規劃多年的業務規模,並對其效能提出要求。在測試設計時就需要測試在系統運行了多年時的效能,此時資料庫中會有大量的歷史資料,我們在測試時需要首先構造這些歷史資料,我們稱之為基礎資料,這種情況的測試稱為大資料量測試。由於構造資料的量級不同,我們會考慮採用不同的構造資料的方法。

常用構造基礎資料的方法有:

1、使用自動化測試工具;

2、使用專用的測試資料產生工具;

3、使用資料庫指令碼語言直編寫儲存過程等產生;

4、使用其他的輔助工具產生;

下面講解一下各種資料產生方法的優缺點。

1、使用自動化測試工具;

使用自動化測試工具如QTP、WinRunner、Robot等錄製指令碼,引數化需要構造的業務資料,然後執行指令碼,通過反覆執行業務場景在後臺數據庫中產生業務資料。
該方法的使用場合:不熟悉後臺資料庫結構,業務資料量需求不是很大。
優點:測試指令碼錄製一遍,可以反覆執行。
缺點:引數化資料,需要對業務規則或資料庫表有一定了解,否則會導致執行失敗。

2、使用專用的測試資料產生工具;

常用的資料構造資料有Quest公司的DataFactory、開源DBMonster。

DataFactory是一種快速的、易於產生測試資料工具,它能建模複雜資料關係,且有帶有GUI介面。DataFactory是一個功能強大的資料產生器,它允許測試人員毫不費力地產生百萬行有意義的測試資料。在使用中首先讀取資料庫中表的schema,即表的定義之類的內容,以列表的形式顯示;然後由使用者定製要產生資料的具體內容,如數字範圍、字串長度、要產生資料記錄的個數等等,最後執行工程,生成資料。

DBMonster ( http://dbmonster.kernelpanic.pl)是一個Java的開源專案,通過JDBC方式連線資料庫,因此可以在任何支援Java和JDBC的平臺上執行。DBMonster開發的原意是為資料庫開發者服務,可以協助產生大量的規則或不規則資料,便於資料庫開發者基於這些資料進行資料庫的調優。DBMonster通過兩個XML檔案(配置檔案和schema檔案)控制資料產生的行為,配置檔案指明需要連線的資料庫、連線使用的使用者名稱和口令、需要操作的sheme、重試次數等全域性設定,而scheme檔案則指明針對每張資料表的每個欄位產生資料的規則。

3、使用資料庫指令碼語言直編寫儲存過程等產生;

要利用該方法構造基礎資料,需要對後臺資料庫的表結構有一定的瞭解,例如表之間的關聯關係、表的自增長主鍵如何實現的、表中的特殊欄位的程式碼如何產生等。在熟悉表結構的基礎上編寫儲存過程。對於複雜業務系統其資料庫結構往往也相當複雜,可編寫多個儲存過程去分別產生各個表中的資料,然後由一個總的儲存過程控制產生資料的規則和數量等。
該方法的適用場合:對資料庫表結構非常熟悉,並且熟悉相應的儲存過程編寫。
優點:在資料庫後臺執行,效率非常高。
缺點:需要花大量的時間熟悉表結構和儲存過程的除錯。

4、使用其他輔助工具

使用PowerDesigner工具。

首先從資料庫中ReverseEngineering出來資料庫的Schema,然後設定測試資料所需要的Profile,以及各個表所需要的測試資料量,再生成Insert指令碼,最後通過資料庫的命令列程式執行這個SQL指令碼將資料Insert到資料庫中。對於不同的資料庫命令列程式不同,比如對MSSQL Server是osql,對Sybase ASE是isql,對Oracle是sqlplus等。

該方法的使用場合:對資料庫結構不熟悉,同時需要產生大量業務資料(如千萬級)。
優點是:做了相應設定之後,Insert指令碼自動生成,產生資料時不需要有業務資料。
缺點是:對於千萬級的測試資料可能要分成若干個SQL指令碼,分別產生,並行執行。對Oracle之類的資料庫尤其要考慮時間日期以及時間戳型別的欄位的值得處理問題。

使用PL/SQL Developer工具

在該工具中【Tools】選單欄下有【DataGenerator】選單,利用該工具可以針對具體的表構造利用其構造規則,設定需要產生的資料。

TOAD工具:

TOAD工具與PL/SQLDeveloper工具類似,也是資料庫客戶端管理工具。TOAD套件中集成了資料生成測試工具和壓力測試工具。資料生成測試工具有助於開發人員快速生成大量有實際意義且引用關係正確的測試資料,簡化應用的測試過程。

使用Informatica工具:

Informatica是資料探勘工具。可利用該工具構造海量資料。在現有的業務資料的基礎上,使用Informatica工具,將現有的業務資料(平面檔案資料或資料庫表中的資料)多次重複裝載到資料庫中,可以快速構造出千萬級的大資料量資料,且生成的大資料量資料在質量和可用性方面有保障。

優點:生成速度很快。

缺點:使用這種方法資料庫相應的表中必須有相應的資料,且資料重複利用時也要考慮欄位值重複問題。


相關推薦

資料測試資料構造工具

 在效能測試中,我們經常會涉及到測試資料,對於測試資料我們可以為兩種:一種是執行測試用例中使用的測試資料;另一種是在大資料量下測試時需要的測試基礎資料。兩者的主要區別是在於是否會在測試中直接用於測試執行。測試基礎資料可以轉化為測試資料。在這裡主要說明測試基礎資料。 一個系統

多組測試資料求最

Description 輸入一些整數,求最大值 Input 多組測試資料 首先輸入1個整數n表示測試組數 然後每行首先輸入1個整數m,再輸入m個整數 Output 對於每組測試資料輸出1行,內容為m個整數的最大值 #include<stdio.h> int main() {

5個常用的資料視覺化分析工具,你知道嗎?

大資料及移動網際網路時代,每一個使用移動終端的人無時無刻不在生產資料,而作為網際網路服務提供的產品來說,也在持續不斷的積累資料。資料如同人工智慧一樣,往往能表現出更為客觀、理性的一面,資料可以讓人更加直觀、清晰的認識世界,資料也可以指導人更加理智的做出決策。 而在大資料時代的今天,最有價值的商品

ASP.NET MVC + EF 利用儲存過程讀取資料,1億資料測試很OK

 看到本文的標題,相信你會忍不住進來看看!   沒錯,本文要講的就是這個重量級的東西,這個不僅僅支援單表查詢,更能支援連線查詢,   加入一個表10W資料,另一個表也是10萬資料,當你用linq建立一個連線查詢然後

55 個實用的資料視覺化分析工具

俗話說的好:工欲善其事,必先利其器!一款好的工具可以讓你事半功倍,尤其是在大資料時代,更需要強有力的工具通過使資料有意義的方式實現資料視覺化,還有資料的可互動性;我們還需要跨學科的團隊,而不是單個數據科學家、設計師或資料分析員;我們更需要重新思考我們所知道的資料視覺化,圖表和圖形還只能在一個或兩個維

測試技能:在oracle中自用儲存過程進行測試資料構造

一、實踐 –迴圈賦值 declare i integer; –定義變數 begin i := 101; loop /* 插入資料 */ insert into emp (EMP_ID, E_ID, UM_ID, NAME, BIRTHDAY, A

資料視覺化應用工具,主要有哪幾種?

  俗話說的好,逆水行舟,不進則退,在快速發展的今天,緊跟時代的步伐,抓住時代的脈搏,才能助力企業激流勇進,搶佔先機。作為助力企業經營決策的大資料視覺化應用,對於的企業發展起著至關重要的作用,但是如何利用大資料視覺化,如何做好大資料視覺化,今天小編就給大家介紹幾款實用的工具,幫助大家在大資料的海

資料測試(開源優測)

什麼是BI? BI(Business Intelligence)即商務智慧,它是一套完整的解決方案,用來將企業中現有的資料(原始資料或商業資料或業務資料等)進行有效的整合,快速準確地提供報表並提出決策依據,幫助企業做出明智的業務經營決策。 原始資料記錄了企業日常事

spark 資料搜狗測試資料SogouQ1.txt檔案格式問題說明

為了學習,從網上搞到了SogouQ1.txt,執行到rdd3.count()顯示了一堆亂碼懷疑編碼不對,使用em轉成utf-8ok了 結果再執行rdd3.count(),又提示等等 Caused by: java.lang.NumberFormatException: F

7.開發和測試資料集多合適 翻譯自 吳恩達新書-Machine Learning Yearning

為了檢測出不同演算法之間的差異,開發資料集應該足夠大。比如,分類演算法A的準確率為90.0%, 分類演算法B的準確率為90.1%,如果開發資料集中只有100個樣本,那你無法檢測出這0.1%差在哪兒。100個樣本的開發資料集實在時太小了。通常,我們會在開發資料集

資料平臺常見開源工具集錦(強烈推薦收藏)

引言 大資料平臺是對海量結構化、非結構化、半機構化資料進行採集、儲存、計算、統計、分析處理的一系列技術平臺。大資料平臺處理的資料量通常是TB級,甚至是PB或EB級的資料,這是傳統資料倉庫工具無法處理完成的,其涉及的技術有分散式計算、高併發處理、高可用處理、叢集、實時性計算等,彙集了當前IT領域熱

資料領域兩最主流叢集管理工具Ambari和Cloudera Manger

目前啊,都知道,大資料叢集管理方式分為手工方式(Apache hadoop)和工具方式(Ambari + hdp 和Cloudera Manger + CDH)。    手工部署呢,需配置太多引數,但是,好理解其原理,建議初學這樣做,能學到很多。該方式啊,均得由使用者執

資料探勘分析工具

大資料時代需要大資料探勘,我習慣把大資料分成四個領域:資料科學、網路科學、空間地理科學和視覺化技術。 最近的主要興趣在空間地理領域,學習如何獲取POI,Polygon,經緯度,空間匹配演算法和視覺化,一個全新領域有帶來諸多大資料分析工具的思考和整合。 恰巧看到一篇國外部落格列舉了大資料領域的

使用Logstash + Elasticsearch作為資料索引、分析工具

logstash(1.4.0)是一個不錯的日誌監控與分析工具,資料通過logstash使用後端的ElasticSearch(1.1.1)叢集完成資料索引,以供後續的查詢、分析使用。 logstash提供了一個geoip的filter,如果傳送的事件資料中有IP地址之類的資

海量資料測試,利用資料庫查詢拷貝快速構造測試資料

這也是OneCoder在資料測試過程中遇到的問題,不一定有多少普試性,但是也許可以解決你的問題。 海量資料測試,資料匯入一般是非常耗時的過程。OneCoder這裡面對大約2T左右資料的匯入問題,頭疼不已,時間有限。本來準備的方式是將事先生成好的

資料分析處理必備工具

大資料技術,就是從各種型別的資料中快速獲得有價值資訊的技術。大資料領域已經湧現出了大量新的技術,它們成為大資料採集、儲存、處理和展現的有力武器。 一、大資料接入   1、大資料接入       已有資料接入、實時資料接入、檔案資料接入、訊息記錄資料接入、文字資料接

資料分析常用的工具有哪些(二)

在上篇文章中,筆者為大家介紹了幾種常用的大資料使用工具,而除了那些之外,還有一些在大資料中經常會用到的工具。接下來,就讓筆者繼續為大家介紹一下吧。 第三類,資料探勘類。 1.RapidMiner 這款工具主要就是用來對資料進行預測和分析的,其視覺化的介面,讓使用者不必再自行

資料分析常用的工具有哪些(一)

眾所周知,現在大資料行業發展得十分火熱,而大資料也確實為我們的生活帶來了許多的便利。隨著大資料的不斷髮展,需求的不斷增多和提升,大資料的使用工具也變得更為重要,它們能讓大家節省更多的時間和金錢。 在大資料這一概念提出到現在的這十年間,市面上出現了各類的大資料使用工具,讓我們從中遴選

資料測試考題

很多人都在談大資料技術,但客戶在真正啟動大資料專案的時候有哪些技術思考? 如何來選型大資料平臺?從以下POC考題及案例就可以瞭解客戶對大資料的細粒度需求。看了考題,你能全部做下來嗎?

資料常用的軟體工具有哪些?

眾所周知,現如今,大資料越來越受到大家的重視,也逐漸成為各個行業研究的重點。正所謂“工欲善其事必先利其器”,大資料想要搞的好,使用的工具必須合格。而大資料行業因為資料量巨大的特點,傳統的工具已經難以應付,因此就需要我們使用更為先進的現代化工具,那麼大資料常用的軟體工具有哪些呢? 首