ETL測試工具簡介

 
 

ETL測試

ETL測試過程與其餘測試過程相似,包括一些階段。php

  • 肯定業務需求
  • 測試計劃
  • 設計測試用例和測試數據
  • 測試執行和錯誤報告
  • 總結報告
  • 測試結束

ETL測試的類型html

  • 生產驗證測試: 也稱爲表平衡或產品對賬。 它在以正確順序移入生產系統以前或同時對數據執行。
  • 源目標測試: 在數據轉換後驗證數據值。
  • 源應用程序升級: 檢查數據是從舊應用程序或新應用程序或存儲庫中提取的。
  • 數據轉換測試: 爲每一行運行多個SQL查詢以驗證數據轉換標準。
  • 數據完整性測試:驗證是否按照預約義標準將預期數據加載到適當的目的地。

我還想將ETL測試與數據庫測試進行比較,但在此以前讓咱們看一下有關數據庫測試的ETL測試類型。python

下面給出了與數據庫測試有關的ETL測試類型:git

  • 約束測試:NULL、惟1、主鍵、外鍵、校驗、空值、默認github

  • 重複檢查測試:源表和目標表包含大量具備頻繁重複值的數據,在這種狀況下,測試人員會按照一些數據庫查詢來查找此類重複。數據庫

  • 導航測試:導航涉及應用程序的GUI。 當用戶在整個系統中得到簡單且相關的導航時,用戶會發現應用程序友好。 測試人員必須專一於從用戶的角度避免不相關的導航。apache

  • 初始化測試:執行初始化測試以檢查硬件和軟件要求以及安裝的平臺的組合編程

  • 屬性檢查測試:
    執行此測試以驗證源系統和目標系統的全部屬性是否相同後端

從上面的列表中能夠看出,ETL測試與數據庫測試很是類似,但事實是ETL測試涉及數據倉庫測試而不是數據庫測試。api

ETL測試與數據庫測試不一樣,還有其餘一些事實。

讓咱們快速看看它們是什麼:

  • 數據庫測試的主要目標是檢查數據是否遵循數據模型的規則和標準,另外一方面,ETL Testing檢查數據是否按預期移動或映射。
  • 數據庫測試側重於維護主鍵 - 外鍵關係,而ETL測試根據需求或指望驗證數據轉換 ,並在源系統和目標系統上相同。
  • 數據庫測試可識別缺失數據,而ETL測試可肯定重複數據。
  • 據庫測試用於企業商業智能報告的 數據集成和ETL測試
    這些是使ETL測試與數據庫測試不一樣的一些主要差別。

ETL錯誤列表的表:

bug的類型 描述
計算錯誤 因爲數學錯誤,最終輸出錯誤
輸入/輸出錯誤 接受無效值、拒絕有效值
H/W錯誤 因爲硬件問題,設備無響應
用戶界面錯誤 與應用程序的GUI相關
加載條件錯誤 拒絕多個用戶

如何在ETL測試中建立測試用例

ETL測試的主要目標是確保提取和轉換的數據是否從源到目標系統準確加載。 ETL測試包括兩個文檔,它們是:

  • 1)ETL映射表:該文檔包含有關源表和目標表及其引用的信息。 映射表提供了在執行ETL測試時建立大SQL查詢的幫助。

  • 2)源和目標表的數據庫模式:應該在具備數據庫模式的映射表中保持更新,以執行數據驗證。

最流行的ETL測試工具列表

與自動化測試同樣,ETL測試也能夠自動化。 自動ETL測試可減小測試過程當中的時間消耗,並有助於保持準確性。

Informatica數據驗證

 
image.png

Informatica Data Validation是一個基於GUI的ETL測試工具,用於提取,[轉換和加載(ETL)。 測試包括數據遷移以前和以後的表的比較。 此類測試可確保數據完整性,即正確加載數據量並以預期格式進入目標系統。

主要特色:

  • 全面的ETL測試工具,不須要任何編程技能。
  • 在ETL測試期間提供自動化,確保數據是否正確傳送而且是否以預期的格式傳送到目標系統。
  • 有助於在測試和生產環境中完成數據驗證和協調。
  • 下降了在轉換過程當中引入錯誤的風險,並避免將錯誤數據轉換到目標系統。
  • 在開發,測試和生產環境中很是有用,在此環境中,必須在進入生產系統以前驗證數據完整性。
  • 能夠節省50%到90%的成本和工做量。
  • 爲數據驗證和數據完整性提供了完整的解決方案。
  • 直觀的用戶界面和內置操做員,減小了編程工做和業務風險。
  • 識別並防止數據質量問題並提升業務生產力。
  • 容許64%免費試用和36%付費服務,減小數據驗證所需的時間和成本。

訪問官方網站 :Informatica Data Validation

QuerySurge

 
image.png

主要特色 :

  • QuerySurge是一個用於大數據測試和ETL測試的自動化工具。
  • 提升數據質量並加快測試周期。
  • 使用查詢嚮導驗證數據。
  • 它經過自動化手動工做並在特定時間安排測試來節省時間和成本。
  • QuerySurge支持跨IBM,Oracle,Microsoft,SAP等各類平臺的ETL測試。
  • 有助於構建測試場景和測試套件以及可配置的報告,而無需具有SQL的特定知識。
  • 經過自動化流程生成電子郵件報告。
  • 可重複使用的查詢代碼段,用於生成可重用的代碼。
  • 它提供了數據健康的協做視圖。
  • 與HP ALM,TFS,IBM Rational Quality Manager集成。
  • 經過ETL過程驗證,轉換和升級數據。
  • 它是一種商業工具,可鏈接源數據和目標數據,還支持測試場景的實時進度。

訪問官方網站 :QuerySurge

iCEDQ

QuerySurge

iCEDQ是一個自動化的ETL測試工具,專門針對數據中心項目(如數據倉庫,數據遷移等)所面臨的問題而設計.iCEDQ在源系統和目標系統之間執行驗證,驗證和協調。 它確保遷移後數據是否完整,並避免將錯誤數據加載到目標系統中。

主要特色 :

  • iCEDQ是一個獨特的ETL測試工具,能夠比較數百萬行數據庫或文件。
  • 有助於識別包含數據問題的確切行和列。
  • 在執行後向訂閱的用戶發送警報和通知。
  • 支持迴歸測試。
  • 支持各類數據庫,能夠從任何數據庫讀取數據。
  • 鏈接關係數據庫,任何JDBC兼容數據庫,富文本等。
  • 根據數據庫中的惟一列比較內存中的數據。
  • 與HP ALM集成。
  • 專爲ETL測試,數據遷移測試和數據質量驗證而設計。
  • 識別數據集成錯誤,無需任何自定義代碼。
  • 支持ETL流程的規則引擎,協做工做和有組織的QA流程。
  • 30天試用期的商業工具,可提供包含警報和通知的自定義報告。
  • 大數據版如今使用Hadoop Cluster的強大功能
  • 使用iCEDQ進行BI報告測試和儀表板測試

Datagaps ETL Validator

 
image.png

ETL Validator工具專爲ETL測試和大數據測試而設計。 它是數據集成項目的解決方案。 此類數據集成項目的測試包括各類數據類型,大量數據和各類源平臺。 ETL Validator經過自動化幫助克服這些挑戰,進一步有助於下降成本並最大限度地減小工做量。

  • 內置的ETL引擎,能夠比較來自各類數據庫或平面文件的數百萬條記錄。
  • 專爲自動數據倉庫測試而設計的數據測試工具。
  • 具備拖放功能的Visual Test Case Builder。
  • Query Builder的功能,能夠編寫測試用例而無需手動輸入任何查詢。
  • 比較聚合數據,如計數,總和,不一樣計數等。
  • 簡化跨各類環境的數據庫模式的比較,包括數據類型,索引,長度等。
  • ETL Validator支持各類平臺,如Hadoop,XML,Flat文件等。
  • 支持電子郵件通知,Web報告等。
  • 它能夠與HP ALM集成,從而在各類平臺上共享測試結果。
  • 查數據有效性,數據準確性以及執行元數據測試。
  • 檢查參照完整性,數據完整性,數據完整性和數據轉換。
  • 試用期爲30天,無需自定義編程,提升了業務效率。

Datagaps ETL Validator

QualiDI

 
image.png

QualiDi是一個自動化測試平臺,提供端到端測試和ETL測試。 它能夠自動化ETL測試並提升ETL測試的有效性。 它還能夠減小靜止週期並提升數據質量。 QualiDI很是容易識別不良數據和不合規數據。 QualiDI減小了迴歸週期和數據驗證。

主要特色 :

  • QualiDI建立自動化測試用例,併爲自動數據比較提供支持。
  • 提供數據可追溯性和測試用例可追溯性。
  • 集中的存儲庫,用於需求,測試用例和測試結果。
  • 它能夠與HPQC,Hadoop等集成。
  • QualiDI在早期階段發現了一個缺陷,從而下降了成本。
  • 電子郵件通知。
  • 支持持續集成過程。
  • 支持敏捷開發和快速傳遞sprint。
  • QualiDI管理複雜的BI測試周期,消除人爲錯誤和維護的數據質量。

訪問官方網站: QualiDi

用於數據集成的 Open Studio

 
image.png

Talend Open Studio for Data Integration是一個開源工具,能夠簡化ETL測試。 它包括全部ETL測試功能和其餘持續交付機制。 在Talend Data Integration工具的幫助下,用戶可使用各類操做系統在遠程服務器上運行ETL做業。

ETL測試確保數據從源系統轉換到目標而不會丟失任何數據,從而遵照轉換規則。

主要特色 :

  • Talend數據集成支持任何類型的關係數據庫,平面文件等。
  • 集成的GUI,簡化了ETL過程的設計和開發。
  • 內置數據鏈接器,包含900多個組件。
  • 快速檢測轉換規則中的業務歧義和不一致性。
  • 支持遠程做業執行。
  • 早期識別缺陷以下降成本。
  • 根據ETL最佳實踐提供定量和定性指標。能夠在二者之間切換
  • ETL開發,ETL測試和ETL生產環境。
  • 實時數據流跟蹤以及詳細的執行統計信息。

訪問官方網站:Talend ETL Testing

參考資料

Codoid的ETL測試服務

Codoid的ETL和數據倉庫測試服務包括從源到目標系統的數據遷移和數據驗證。 ETL測試確保在將數據從源加載到目標系統時沒有數據錯誤,沒有錯誤數據或數據丟失。 它能夠快速識別ETL過程當中發生的任何數據錯誤或任何其餘常見錯誤。

主要特色 :

  • 可確保數據倉庫中的數據質量以及從源系統到目標系統的數據完整性驗證。

  • ETL測試和數據驗證確保從源系統轉換到目標系統的業務信息準確可靠。

  • 自動化測試過程在數據遷移期間和以後執行數據驗證,並防止任何數據損壞。

  • 數據驗證包括目標數據和實際數據之間的計數,聚合和抽查。

  • 自動化測試過程驗證數據類型,數據長度,索引是否準確轉換並加載到目標系統中。

  • 數據質量測試可防止數據錯誤,錯誤數據或任何語法問題。

訪問官方網站:Codoid’s ETL Testing

Data-Centric Testing

數據中心測試工具執行強大的數據驗證,以免數據轉換期間的數據丟失或數據不一致等任何故障。 它比較系統之間的數據,並確保加載到目標系統的數據在數據量,數據類型,格式等方面與源系統徹底匹配。

主要特色 :

  • 構建數據中心測試以執行ETL測試和數據倉庫測試。
  • 以數據爲中心的測試是最大和最經典的測試實踐。
  • 提供ETL測試,數據遷移和協調。
  • 支持各類關係數據庫,富文本等。
  • 高效的數據驗證,100%的數據覆蓋率。
  • 以數據爲中心的測試還支持全面的報告。
  • 數據驗證的自動化過程會生成SQL查詢,從而下降成本和工做量。
  • 它提供了Oracle和SQL Server等異構數據庫之間的比較,並確保兩個系統中的數據格式正確。

訪問官方網站:Data-Centric Testing

SSISTester

 
image.png

SSISTester是一個框架,有助於SSIS包的單元和集成測試。 它還有助於在測試驅動的環境中建立ETL過程,從而有助於識別開發過程當中的錯誤。 在實現ETL過程時會建立許多包,這些包須要在單元測試期間進行測試。 集成測試也是「實時測試」。

主要特色 :

  • 單元測試創​​建並驗證測試,一旦執行完成,它就會執行清理工做。
  • 集成測試驗證在執行單元測試後全部包都符合之前哦愛u。
  • 當用戶在Visual Studio中建立測試時,將以簡單的方式建立測試。
  • 使用SSISTester能夠實時測試測試。
  • 用戶友好的GUI監控測試執行。
  • 測試結果以HTML格式導出。
  • 它經過使用虛假的源和目標地址來刪除外部依賴項。
  • 對於測試的建立,它支持任何.NET語言。

訪問官方網站: SSISTester

TestBench

TestBench是一個數據庫管理和驗證工具。 它是一個獨特的解決方案,可解決與數據庫相關的全部問題。 用戶管理的數據回滾可提升測試效率和準確性。 它還有助於減小環境停機時間。 TestBench報告在測試環境中執行的全部插入,更新和刪除的事務,並捕獲事務以前和以後的數據狀態。

主要特色 :

  • 保持數據機密性以保護數據。
  • 應用程序的恢復點。
  • 改善了決策知識。
  • 自定義數據集以提升測試效率。
  • 有助於最大限度地測試覆蓋率並有助於減小時間和金錢。
  • 數據隱私規則可確保測試環境中的實時數據不可用。
  • 將結果與各類數據庫進行比較。 結果包括表格的差別和對​​表格的操做。
  • TestBench分析表之間的關係並維護表之間的引用完整性。

訪問官方網站: TestBench

GTL QAceGen

QAceGen專門用於生成複雜的測試數據,自動化ETL迴歸套件以及驗證應用程序的業務邏輯。 QAceGen根據ETL規範中定義的業務規則生成測試數據。 它建立了包含數據生成和數據驗證語句的每一個場景。

訪問官方網站: QAceGen

Zuzena自動化測試服務

Zuzena是一種爲數據倉庫測試而開發的自動化測試服務。 它用於執行大型項目,如數據倉庫,商業智能,它管理數據並執行集成和迴歸測試套件。 它自動管理ETL執行和結果評估。 它具備普遍的指標,可監控QA目標和團隊績效。

訪問官方網站:uzena Automated Testing

DbFit

DbFit是一個開源測試工具,在GPL許可下發布。 它爲任何數據庫代碼編寫單元和集成測試。 這些測試易於維護,能夠直接從瀏覽器執行。 這些測試使用表編寫,並使用命令行或Java IDE執行。 它支持主要數據庫,如Oracle,MySQL,DB2,SQL Server,PostgreSQL等。

訪問官方網站: DbFit

AnyDbTest

AnyDbTest是專爲DBA或數據庫開發人員設計的自動化單元測試工具。 AnyDbTest使用XML編寫測試用例,並容許使用excel電子表格做爲測試用例的來源。 支持標準斷言,如SetEqual,StrictEqual,IsSupersetOf,RecordCountEqual,Overlaps等。它支持各類類型的數據庫,如MySQL,Oracle,SQL Server等。測試能夠包括多個數據庫,即源數據庫能夠是Oracle服務器和目標須要加載數據的數據庫能夠是SQL Server。

訪問官方網站: AnyDbTest

99 Percentage ETL Testing

99 Percentage ETL Testing'確保任何數據庫系統的數據完整性和生產協調。 它維護ETL映射表並驗證行和列的源和目標數據庫映射。 它還維護源數據庫和目標數據庫的DB Schema。 它支持生產驗證測試,數據完整性和數據轉換測試。

訪問官方網站: 99 Percentage ETL Testing

要點

  • 應用合適的業務轉型邏輯。
  • 執行後端數據驅動的測試。
  • 建立並執行絕對測試用例,測試計劃和測試工具。
  • 確保數據轉換,可擴展性和性能的準確性。
  • 確保E
  • TL應用程序報告無效值。
  • 應將單元測試創​​建爲目標標準。

結論

ETL測試不只是測試人員的職責,還涉及開發人員,業務分析師,數據庫管理員(DBA)甚至用戶。 ETL測試過程變得相當重要,由於它須要按期制定戰略決策。 ETL測試被視爲企業測試,由於它須要熟悉SDLC,SQL查詢,ETL過程等。

相關文章
相關標籤/搜索