跳到主要內容

SAP 測試全解析:類型、階段與負責人

什麼是 SAP 測試、每個 S/4HANA 專案都需要的六種測試類型、它們在 SAP Activate 中的位置、應由誰負責,以及測試占專案多少工作量。

Noel D'Costa 站在明亮的測試室中,牆上掛著測試計畫與狀態看板
目錄
  1. SAP 測試實際檢查什麼
  2. 六種 SAP 測試類型
  3. 單元測試
  4. 系統整合測試
  5. 使用者驗收測試
  6. 迴歸測試
  7. 效能測試
  8. 切換演練
  9. SAP 測試需要多少工作量
  10. 測試資料與環境
  11. 手動測試還是自動化
  12. SAP 測試工具
  13. 雲端環境下測試的變化
  14. 從哪裡開始
  15. 常見問題

SAP 測試的工作,是證明一套設定好的 SAP 系統,能用您的資料、在您的業務量下正確執行業務流程,不論是上線之前,還是上線後每一次變更。在 S/4HANA 專案中,它涵蓋六種測試:單元測試、系統整合測試(SIT)、使用者驗收測試(UAT)、迴歸測試、效能測試與切換演練。

每一種測試回答的問題都不同,彼此無法互相取代。依我的經驗,測試約占專案工作量的 35%,所以它應該有自己的計畫、預算與負責人,而不是在建置尾聲擠出幾週。

本頁是總覽。每種測試都有自己的指南,連結放在下方各節。

SAP 系統是設定、主檔資料、客製程式與介面共同運作的結果。一個地方的變更,可能讓別處的流程出錯,而且常常發生在沒人動過的模組。

因此 SAP 測試是以業務流程為單位來安排,而不是以畫面為單位。訂單到收款、採購到付款、記錄到報告都橫跨多個模組,只測到單一交易就停下來,證明不了多少事。

測試也不會在上線時結束。維運變更、SAP 版本更新與新的推展都會改變系統,所以同樣的紀律會延續到 Run 階段。

以下是我在 S/4HANA 專案中規劃的六種測試。下表列出每一種要證明什麼、何時執行,以及應由誰負責。

測試類型要證明什麼在 SAP Activate 中的位置負責人
單元測試每個設定項目、程式或增強功能本身都能正常運作Realize,在每個建置衝刺之內功能顧問與技術顧問
系統整合測試(SIT)完整流程能以貼近真實的資料,跨模組與介面順利執行Realize,建置穩定後分輪進行專案測試主管,搭配流程負責人
使用者驗收測試(UAT)業務單位能在系統上執行真實情境Realize 後段,Deploy 之前業務單位
迴歸測試變更之後,原本正常的功能依然正常Realize 起,之後 Run 階段的每次版本更新測試主管,在數量值得時搭配自動化
效能測試系統在大量使用者同時操作、正式環境資料量下仍撐得住Realize,上線前完成專案層級效能負責人,搭配 Basis
切換演練上線步驟順序、資料載入與時程能完整跑通Deploy切換經理

SAP 測試在 SAP Activate 各階段的安排

  1. Prepare

    建立測試工具、團隊與測試環境。

  2. Explore

    在進行 Fit-to-Standard 決策的同時撰寫測試策略,讓需求可以被測試。

  3. Realize

    在衝刺中做單元測試,建置穩定後進行 SIT 各輪、效能測試與 UAT。

  4. Deploy

    依照事先議定的檢核清單進行切換演練,再做出上線決策。

  5. Run

    每一次維運變更、升級與版本更新都做迴歸測試。

單元測試

單元測試由建置該項目的人執行。功能顧問檢查定價條件,開發人員檢查增強功能或介面對應。

它是必要的,但不夠。單元測試通過,並不能告訴您這個項目接上流程其他部分之後會發生什麼事。

系統整合測試

SIT 是專案確認設計到底可不可行的地方。一張銷售訂單必須順利流向交貨、開票、會計與報表,沿途每一個介面都要正確過帳。

我把 SIT 分成好幾輪,而不是只跑一次。第一輪找到的缺陷修正後,下一輪要證明這些修正沒有弄壞其他東西。各輪測試、進入準則與退出準則如何搭配,請參考我的 S/4HANA 測試策略指南。

使用者驗收測試

UAT 是業務單位確認系統能支援上線後的工作方式。它屬於業務單位,而不是系統整合商,因為只有業務單位能夠驗收系統。

UAT 至少需要 6 到 8 週。為了配合延誤的建置而壓縮它,您得到的會是紙上的簽核和正式環境裡的問題。我的 SAP 使用者驗收測試 指南涵蓋測試腳本、角色與簽核。

迴歸測試

迴歸測試是在變更之後重新執行已驗證過的測試,抓出變更弄壞的地方。在長期專案中,正式環境的維運修正與專案變更會同時在系統中流動。

我的做法是維持兩套獨立的環境,一套給專案,一套給日常維運(BAU)。這樣正式環境的維運變更與專案變更可以分開測試,任何一邊都不會掩蓋另一邊的缺陷。我的 SAP 迴歸測試 指南涵蓋雙環境做法、升級與影響分析。

效能測試

效能測試必須在上線前完成。最重要的是並行測試,也就是讓大量使用者在同一時間執行交易。

一筆對單一使用者完全正確的交易,換成兩百位使用者時可能逾時。功能測試永遠不會讓您看到這一點。我寫給 IT 主管的 SAP 效能測試 指南涵蓋負載、壓力與長時間穩定性測試,以及如何撰寫驗收準則。

切換演練

切換演練測試的是上線本身:技術步驟的順序、資料載入、對帳與簽核,以及各步驟的時間。在 brownfield 轉換專案中,我會在正式切換前規劃三次模擬轉換。

我堅持的上線準則,是一份事先議定的詳盡切換檢核清單。如果檢核清單是在切換週末才寫出來,那之前的演練就稱不上真正的演練。

依我的經驗,測試約占專案工作量的 35%。這個數字常讓專案發起人吃驚,因為他們以為測試只是建置與上線之間的一小段空檔。

這些工作分散在很多人身上。顧問執行單元測試,測試團隊準備並執行 SIT,業務使用者執行 UAT,Basis 與整合團隊則支援效能測試與切換演練。

資料移轉與測試並行,本身就占 30% 到 40% 的工作量。兩者高度重疊,因為每一輪測試都需要看起來像正式環境的移轉資料。

我最常看到的測試失敗,就只是 SIT 與 UAT 的測試量不足。建置延誤時,測試輪次被砍,上線日期卻原地不動。在我主導或救援過的 21 個 SAP 專案中,最大的錯誤仍是一開始沒有好好規劃,而測試通常是這個問題最先浮現的地方。

測試的品質取決於它所用的資料。我的原則是使用經過遮罩、但達到正式環境等級的資料:正式環境規模的資料量與貼近真實的紀錄,個人與敏感欄位則加以遮罩。

又少又乾淨的測試資料,會把真正重要的問題藏起來。一份在幾千筆紀錄上幾秒就跑完的報表,換成一整年的過帳資料可能要跑好幾個小時。

環境和資料一樣重要。在 Prepare 階段就規劃測試環境,決定各輪之間如何更新,並讓專案變更與 BAU 變更保持分離。我的 SAP 測試資料管理 指南涵蓋系統複製、資料遮罩與選擇性測試資料。

測試不是 SAP 專案的最後一個階段。它大約占整體工作的三分之一,需要自己的預算、負責人與時程。

我對自動化的原則很簡單。當測試案例數量很多,而且需要大量重複測試時,就自動化。低於這個程度,手動測試就夠了。

迴歸測試通常是自動化最先回本的地方,因為每次變更後都要跑同一批測試。UAT 大多維持手動,因為它的目的是業務使用者的判斷,而不是腳本的判斷。

及早決定還有一個實際的理由。自動化測試需要時間建置與維護,只有執行很多次才划得來。我的 SAP 測試自動化指南 涵蓋從哪裡開始,以及何時能回本。

這些工具分成三類:測試管理、功能自動化與效能測試。我主導或合作過的團隊用過 Tricentis Tosca、Worksoft、Panaya、SAP Cloud ALM、SAP Solution Manager、UiPath 與 LoadRunner。

以下是每一類工具的用途,以及其中的產品:

工具類別用途團隊常用的產品
測試管理測試計畫、測試案例、執行紀錄、缺陷,以及與需求的追溯關係SAP Cloud ALM、SAP Solution Manager、Panaya
功能測試自動化在 SAP 與非 SAP 應用程式上執行腳本式或模型式測試Tricentis Tosca、SAP Test Automation by Tricentis、Worksoft、UiPath
效能測試模擬大量並行使用者與正式環境資料量OpenText LoadRunner,現以 OpenText Professional Performance Engineering 名稱銷售

在選擇之前,有幾項產品事實值得先了解。

  1. SAP Cloud ALM 已包含在 SAP Enterprise Support 客戶,或含 Enterprise Support, cloud editions 的雲端訂閱之中(SAP Support)。它的測試管理涵蓋測試準備、測試計畫與執行,包括 UAT 用的手動測試案例(SAP Learning)。
  2. SAP Solution Manager 7.2 的主流維護將於 2027 年底結束,部分功能(包括測試套件)可選擇延長維護至 2030 年底(SAP Support)。
  3. SAP Test Automation by Tricentis 是 SAP 轉售的自動化產品,與 SAP Cloud ALM 整合,專為 SAP 與第三方系統打造(SAP)。
  4. LoadRunner 是 OpenText 的產品。LoadRunner Professional 現在稱為 OpenText Professional Performance Engineering,支援 SAP GUI 與 SAP Web 協定(OpenText)。

如果您正要啟動新專案,請規劃在 Cloud ALM 而不是 Solution Manager 中管理測試。更深入的比較,請參閱我的 SAP 測試工具 指南。

在 SAP Cloud ERP public edition(S/4HANA Cloud Public Edition)上,SAP 會依照自己的時程為每位客戶升級。SAP Learning 說明升級每六個月一次,目前在 2 月與 8 月,中間則每月提供新功能(SAP Learning)。

升級日期不由您決定,所以迴歸測試會變成固定的行事曆項目,而不是一個專案。這正是在公有雲系統上及早將迴歸測試自動化的最有力理由。

在私有雲與地端環境,升級時間由您掌控。不過每一次升級,仍需要依變更所影響的流程規模,安排一輪迴歸測試。

首先,把測試以獨立工作流的形式放進專案計畫,配置自己的負責人與預算,規模約為整體工作量的三分之一。接著指定 UAT 的業務負責人,現在就在行事曆上保留 6 到 8 週,別等建置把它擠掉。

用可衡量的退出準則,把測試結果與 go/no-go 決策綁在一起。我的 SAP 品質關卡 指南說明了做法。如果您的專案已經陷入困境,我的 SAP 專案救援 筆記說明了應該先修正什麼。

如果您想對測試策略或上線決策取得獨立的看法,我可以協助您的組織。您可以 在這裡與我聯絡。

什麼是 SAP 測試?

SAP 測試是證明設定好的 SAP 系統,能用您的資料、在您的業務量下正確執行業務流程。在 S/4HANA 專案中,它包括單元測試、系統整合測試、使用者驗收測試、迴歸測試、效能測試與切換演練。上線後,每一次維運變更與版本更新都會持續進行。

SAP 測試有哪些類型?

六種主要類型是單元測試、系統整合測試(SIT)、使用者驗收測試(UAT)、迴歸測試、效能測試與切換演練。單元測試檢查單一項目,SIT 檢查跨模組與介面的完整流程,UAT 則是業務單位驗收系統。迴歸測試、效能測試與切換演練分別防範變更、負載與上線本身帶來的風險。

SAP 使用者驗收測試需要多久?

UAT 至少要規劃 6 到 8 週。應由業務單位負責,執行真實情境並完成簽核。UAT 與 SIT 的測試量不足,是我最常看到的測試失敗。

測試占 SAP 專案多少比例?

依我的經驗,測試約占專案工作量的 35%。這包括準備與執行單元測試、SIT 各輪、UAT、迴歸測試、效能測試與切換演練。資料移轉與測試並行,每一輪測試都需要貼近正式環境的資料。

SAP 測試應該自動化嗎?

當測試案例數量很多、需要大量重複測試時就自動化,這通常指的是迴歸測試。低於這個程度,手動測試就夠了。UAT 大多維持手動,因為它的目的是業務單位的判斷。

SAP 測試要用哪一種工具?

大多數專案會把測試管理工具、自動化工具與效能測試工具搭配使用。常見的選擇是以 SAP Cloud ALM 或 Solution Manager 做測試管理,以 Tricentis Tosca、SAP Test Automation by Tricentis、Worksoft 或 UiPath 做自動化,並以 OpenText LoadRunner 做效能測試。新專案應以 Cloud ALM 為規劃基礎,因為 Solution Manager 的主流維護將於 2027 年結束。

Noel D'Costa

作者

Noel D'Costa

25 年來,我在航空、政府、金融、零售與製造業的 SAP 與 Oracle ERP 專案中累積經驗,並具備財務背景。我協助管理階層如實界定轉型範疇,讓陷入困境的專案重回正軌,並打造撐得過正式上線第一年的系統。

下一步

您目前正在進行 ERP 專案嗎?

如果這篇文章談到的正是您目前進行中的專案,30 分鐘的對談通常比再花一週做內部分析更有進展。