數據遷移主要使用在新老系統到切換,主要有兩種類型,一種是將老系統的數據全部遷移到新系統中,業務上只使用新系統,老系統不再使用,另外一種是,老系統的部分功能在新系統中暫時無法實現,但是在業務上需要使用新系統,需要將新系統中產生到數據導入到老系統到數據庫中,做特殊用途。
將老系統中到數據遷移到新系統中
主要到策略有:
1. 查看老系統中到數據是否完全遷移到新系統中
要保證新老系統到無縫切換,必須要保證數據的正確性,而將老系統中到數據遷移到新系統,首先就要保證所遷移的數據量是一致的,只要在保證數據量一致的情況下,才能進行其他方面到測試,如果數據量都不一致,說明遷移方法或者腳本就是錯誤到,需要尋找原因。
2. 查看新老系統數據庫表結構變化
1) 哪些新表字段在老庫中無數據,而新庫必須有,這些數據無則默認給什么值
2) 哪些數據字段一部分有數據,一部分無數據;遷移到新庫中無數據這部分如何處理
3) 舊數據庫中的表關系到新庫中的表關系有什么變化
3. 查看新老系統中,相同字段不同狀態的變化
因為新老系統在業務表示上會有一定到差異,用來表示業務狀態的標示也會存在有變化,就必須注意新老系統在表示相同業務狀態的差異,一般,這種情況會做相應的映射,需要根據映射關系,檢查遷移后的數據是否正確。
4. 查看新老系統中各個字段轉換是否正確
在進行字段檢查測試之前,需要準備測試數據,測試數據到準備最好是能夠將每個字段到不同情況都考慮到,可以使用矩陣法,用最少的數據覆蓋到最多的狀態。準備好數據后,根據遷移規則,可以查看各字段遷移后到數據是否正確,一般來說,遷移規則有以下幾種。
1>直接遷移,原來是什么就是什么,原封不動照搬過來,對這樣的規則,如果數據源字段和目標字段長度或精度不符,需要特別注意看是否真的可以直接映射還是需要做一些簡單運算,還要查看,遷移腳本中是否對長度或精度進行了處理,測試時,也需要準備長度精度不一致到數據進行測試,查看是否能夠正確遷移。
2>字段運算,數據源的一個或多個字段進行數學運算得到的目標字段,這種規則一般對數值型字段而言。
3>參照轉換,在轉換中通常要用數據源的一個或多個字段作為Key,去一個關聯數組中去搜索特定值,而且應該只能得到唯一值。一般來說,這樣的主要適用于某些類似于id的字段
4>字符串處理,從數據源某個字符串字段中經?梢垣@取特定信息,例如身份證號。而且,經常會有數值型值以字符串形式體現。對字符串的操作通常有類型轉換、字符串截取等。但是由于字符類型字段的隨意性也造成了臟數據的隱患,所以在測試這種情況的時候,一定要考慮異常情況。
5>空值判斷,對于老系統中空值字段,不能簡單的認為遷移后還是空值,需要根據實際的情況,考慮該字段在新庫中應該為哪個字段,還要考慮,如果老系統中該字段不為空的情況。
6>日期轉換,需要考慮新老系統對日期到不同表示方法。
7>聚集運算,對于事實表中的度量字段,他們通常是通過數據源一個或多個字段運用聚集函數得來的,這些聚集函數為SQL標準中,包括sum,count,avg,min,max。
8>既定取值,這種規則和以上各種類型規則的差別就在于它不依賴于數據源字段,對目標字段取一個固定的或是依賴系統的值。
5. 查看遷移后的數據在業務邏輯上是否正確
使用從老系統中遷移過來的數據,在業務系統中進行流程測試,功能測試確保遷移后到數據可用。
文章來源于領測軟件測試網 http://www.kjueaiud.com/