客戶為什麼會有遷移的需求?
一般而言,遷移的過程勢必對當前應用系統執行產生一定的影響,從而會給客戶的營業額帶來一定的損失,同時客戶還得投入大量的人力物力進行遷移的可行性研究、測試及實施等工作。
一般而言,遷移的目的是為了獲取新版本更加完善的功能,以及最新的業務模式。
當然,還有其他一些原因促使客戶去遷移應用,例如,隨著客戶業務的不斷增長,對系統的效能要求越來越高。
總之,企業級應用遷移的最終目的在於保證企業級應用在激烈的市場競爭中始終保持青春活力,立於不敗之地。
什麼是遷移和遷移測試?
簡單來講,產品遷移是將舊版本的應用系統環境所有資產資訊完整地遷移到新版本的環境之上,同時要保證舊版本的功能在新的平台上正常執行,並且新版本的新增功能也能正常工作。
遷移測試是對遷移過程及其遷移結果進行驗證,從而保證過程和結果的正確性。遷移過程中除了會應用到自身特有的測試方法以外,還會借助於功能測試、效能測試等來保證完成遷移的應用系統環境的正確性和可靠性。
如何做遷移測試?
要想深入了解遷移測試,首先需要理解企業級應用的架構,然後是遷移的內容,最後才能有的放矢地制定遷移測試的計畫。
什麼是企業級應用架構?
一般來說,企業級應用是為商業組織或大型企業提供特定解決方案的一套完整系統,該系統包含了支援應用程式執行的各個組成部分:
底層的作業系統:windows, solaris, plinux
後台資料庫伺服器: db2, oracle
面向使用者的web伺服器:iis, sunone
執行應用程式的中介軟體:tomcat
部署在中介軟體之上的企業級應用
企業級應用架構的分類
對於乙個企業級應用程式,根據企業業務實際需求的不同,可以制定不同的解決方案。而企業級應用可以從下面各種不同的角度來劃分:
按不同的拓撲結構分:單節點,雙節點,多節點
按不同的伺服器集群環境分:垂直集群,水平集群,混合集群
按應用產品發布的版本分:企業版,專業版,簡裝版
按企業應用執行平台分:生產環境,開發環境
遷移包括哪些內容?
基礎軟體的公升級和新版本應用產品的安裝:基礎軟體是指支援企業應用執行的底層軟體。
資料庫的遷移:不是指資料庫管理系統本身的公升級,而是將舊版本的資料庫中的資料結構及資料遷移到新版本的應用系統之上,使得遷移之後的資料結構和資料符合新版本應用系統後台資料庫的規範和要求。
應用程式的遷移:將舊版本的應用程式遷移到新版本,遷移之後保證舊版本功能同樣適用,同時將新版本的功能也能正常工作。
遷移的順序
一般而言,企業級應用遷移的第一步是基礎軟體的公升級和新版本應用產品的安裝,第二步是進行資料庫遷移,第三步完成應用遷移。
遷移過程中客戶關注的問題
一方面,客戶關注遷移步驟的簡單性、易用性及遷移流程的高效性。因而在整個遷移過程中,人工干預越少越好,盡可能實現整個遷移過程的自動化。
另一方面,客戶關注遷移前後應用系統的宕機時間。
宕機時間是企業級應用作移植時第一要考慮的要素。而整個遷移過程中的宕機時間一般受資料庫的遷移時間影響比較大。
遷移測試的分類
在遷移測試中,部分測試驗證工作是在遷移環境上進行的,還有一部分比較驗證需要借助於不同版本的環境來完成。根據涉及的驗證環境的不同,可分為垂直遷移測試方法和水平遷移測試方法。
垂直遷移測試
垂直遷移測試時遷移測試的基本方法,所有的驗證都是在完成從舊版本到新版本遷移的系統環境上進行的。按照遷移的先後順序,首先是軟體公升級測試、資料庫遷移測試、應用遷移測試,其次是在遷移之後的環境上進行子系統的遷移測試、整合系統遷移測試、客戶定製化遷移測試、功能測試、效能回歸測試、遷移擴充套件性測試。
作為乙個完整的垂直遷移測試的框架,垂直遷移測試需要考慮從底層基礎軟體到上層應用的每乙個功能點。
基礎改造——軟體公升級測試:軟體公升級測試是保證支援應用執行的軟體都被正確地安裝或遷移。
客戶資料不能丟——資料庫遷移測試:目的在於保證舊的資料庫資料結構,資料庫中加密的及沒有加密的客戶資料都被正確地遷移過來。內容:資料庫資料結構和資料的遷移。
功能點不能少——應用程式遷移測試:驗證應用程式遷移流程和結果的正確性。內容:確保應用的配置資訊被正確地遷移,確保新版本應用的功能模組被自動地載入到遷移之後的應用系統中,確保應用伺服器舊版本的配置資訊被正確遷移到新的應用系統中,確保web伺服器舊版本的配置資訊被正確遷移到新的應用系統中。
子系統遷移測試:驗證這些子模組的遷移步驟和遷移程式的正確性。
整合系統遷移測試:驗證應用軟體本身和其他應用作為乙個整合系統在完成遷移後,能正常工作。
客戶定製化遷移測試:測試客戶在舊版本環境上根據自身業務要求的需要進行定製的程式,是否被正確地遷移到新系統的版本。
功能測試:驗證遷移之後的應用系統功能的完整性和正確性。一種是貫穿整個遷移過程的管道資料功能測試,另一種是在完成了遷移的應用系統上的功能回歸測試。
效能測試:比較遷移之後的應用系統的效能測試結果和舊版本的效能測試結果,期望結果是沒有效能的下降,效能指標對於客戶而言是可以接受的。
遷移擴充套件性測試:針對大資料量和大型應用的測試,保證應用和資料遷移能夠在可以接受的時間內正確完成。
水平遷移測試與垂直遷移測試的區別
垂直遷移測試和水平遷移測試不是相互獨立的,水平遷移測試主要運用於垂直遷移框架中的資料庫遷移測試和應用遷移測試。水平遷移測試與垂直遷移測試的主要區別在於前者需要涉及多個應用系統環境的比較。水平遷移測試是垂直遷移測試的必要補充,垂直遷移測試主要對整個應用的乙個從底向上的完備的考量,而水平遷移測試主要是考慮資料庫和應用程式遷移前後的比較。
水平遷移測試
新版本資料結構驗證:驗證資料結構首先需要將資料結構按照型別以一定的格式倒入乙個檔案中以進行比較驗證,如xml檔案。
商業資料驗證:包括所有商業事務處理相關的資料。
應用配置資訊驗證:保證遷移後應用配置檔案的正確性和一致性。
水平遷移測試的各個部分相對獨立,對於資料庫和應用可以分開進行驗證,但它們又都是垂直遷移測試流程中不可或缺的一環。
垂直遷移測試與水平遷移測試的比較
其他遷移測試內容
相容測試:目的在於確保以前的地版本上部署的經客戶定製過的應用所依賴的一些因素能夠正常地提供服務,而使客戶的定製應用不受影響,從而客戶無須重新構建或部署他們的應用。影響相容性因素主要有:開發框架公升級,api的不相容性,行為的變化。
遷移文件測試:目的在於保證遷移文件的質量,確保客戶能夠遵循正確的遷移文件完成客戶應用系統的遷移工作。
真實客戶環境測試:遷移測試重要的驗證方式,對於保證遷移測試的正確性,特別是對於效能方面的驗證是非常必要的。
遷移安全性測試:在遷移環境上進行檔案許可權驗證及敏感資料檢查。
選擇遷移測試平台
確定遷移路徑和平台支援矩陣表,合併羅列所有測試配置組合,識別優先順序進行篩選。
選擇測試用例組
基本測試用例組包括遷移測試的主要流程的測試用例:軟體公升級測試、資料庫遷移測試、應用程式遷移測試、子系統遷移測試、客戶定製化遷移測試、功能驗證測試。
擴充套件測試用例組:整合系統測試
高階測試用例組:遷移擴充套件測試、真實客戶資料應用測試、遷移環境上的功能回歸測試和效能回歸測試。
基本測試用例組的測試在所有的配置組合上都得測試,但在每個測試階段,可以涵蓋不同的測試用例。
擴充套件測試用例組主要涵蓋和應用相關的整合軟體的遷移,根據實際需求選擇測試或者不測。
高階測試用例組測試也是根據具體的測試要求單獨計畫,只需要選擇部分平台組合進行測試。
總結
遷移是從舊版本的系統環境到最新版本的系統遷移,遷移場景如下:
在測試環境上進行遷移和遷移測試:
在開發環境上進行遷移和遷移測試:
在遷移之後測試環境上進行功能測試和效能測試
軟體測試之 軟體測試方法
1 介紹測試方法 2 區分黑盒測試 灰盒測試和白盒測試 邏輯覆蓋測試 3 區分靜態測試 控制流分析 資料流分析 資訊流分析 同行評審 和動態測試 動態測試工具 4 了解手工測試和自動化測試。在介紹以上軟體測試方法時,需要先了解軟體產品的概念,軟體研發過程中產生的所有文件和 都可以稱之為軟體產品,同時...
軟體測試之測試術語
軟體測試 軟體測試,指通過某種手段來執行或測試某個系統的過程。其目的在於檢驗它是否滿足規定的需求或弄清預期結果與實際結果之間的差別。軟體測試是為了發現錯誤而執行程式的過程。測試用例 指的是在測試執行之前設計的一套詳細的測試方案,包括測試環境 測試步驟 測試資料和預期結果。用乙個等式來簡單表示 測試用...
軟體測試之配置測試
場景 學習 軟體測試 第8章節 配置測試 什麼是配置測試?指使用各種硬體來測試軟體操作的過程。硬體有不同的廠家 型號,詳盡的地測試每種硬體工作量是巨大的,成本高並且也不現實,那麼怎麼樣來進行配置測試呢。這個感覺書中講的比較晦澀,結合他們的執行方法和自己測試的來簡述一下。1.確定所需要的硬體型別 這個...