什麼是報表測試?
最近開始在做報表測試,顧名思義,就是指測試報表,報表主要是給一些特定的群體展示一些特定資料或是彙總資料,則報表測試主要是跟一堆資料打交道,檢驗和确認報表展示出來的資料是否正确,取值是否有誤。
報表測試需要做些什麼?
1、測試前的準備工作
報表測試之前需要準備大量的資料,針對各種業務場景的資料,資料準備一定要全面。
以前我沒有過多地接觸過報表測試,想着覺得很難,很麻煩,等到真正開始做的時候,也沒有想象中的那麼難,要做好報表測試,需要将前面幾步做好:
第一步,弄清楚業務,對于每一張報表,它反映的是什麼内容;報表的含義,誰來使用這張報表,關注這張報表,關注點是什麼,将這些點一一理清楚
第二步,仔細分析報表中每一個字段來源于哪張表或是哪些表(這張報表涉及到的表),又是如何将該字段值計算出來的
第三步,生成報表中資料的條件,一般來說報表中很多字段的值都是由不同的條件得出來的,理清楚這些條件,在測試過程中需要全覆寫這些條件
舉一個簡單的例子,有一張報表需要反映使用者最受歡迎的外賣商家,分析其中外賣平台這個條件需要包括系統中存在的所有外賣平台,那麼在測試過程中準備的資料中,外賣平台字段值==所有外賣平台
若上面三點都理清楚了,基本對這張報表需要做什麼有一個清楚地認識了,對這些條件了解透徹,測試報表過程中準備各種各樣的資料才能得心應手,測試報表最重要地就是準備的資料要全面,不能出現條件的遺漏。

2、測試
測試過程中需要實際去追尋資料來源和對比資料。
方法一、檢視撈取資料的sql語句
測試時通過檢視日志的形式找出撈取資料的sql語句,對于每一張報表,撈取資料的sql語句都是非常地長,其中可能會關聯二張以上不同的表撈或将取到的資料作為中間表,根據條件來查詢資料或計算等操作,撈取資料的sql語句大多都是複雜的查詢語句,在測試時需要一一梳理sql語句中的條件和語句。
方法二、檢查線上資料
報表上線前可以将撈取資料的sql拿到線上去執行一下,檢查一下sql線上上環境能否正常執行,這也是為了避免因為某一個字段無值或有誤時,會影響到sql的結果。
檢查線上資料可以預防項目上線後,報表取值出現錯誤或報表顯示不出來。
我們在測試過程不要太依賴于測試環境的資料,更應該多了解和熟悉線上環境的資料,及不同場景資料的不同表現形式。