天天操天天射综合,午夜精品999,国产黄a一级,亚洲成aⅴ人在线观看,外国免费毛片,蜜桃精品视频在线,亚洲第一中文字幕在线

跨系統(tǒng)缺陷定位和調試方法研究

2018-03-28 22:02:44 大云網(wǎng)  點擊量: 評論 (0)
在電力企業(yè)大型管理信息系統(tǒng)建設過程中,如何做好聯(lián)調測試是一個關鍵性的難題。而在聯(lián)調測試工作中,重中之重則是跨系統(tǒng)缺陷的定位和調試。當前,在電力信息系統(tǒng)工程建設中針對跨系統(tǒng)缺陷定位和調試缺乏有效的方法,基本上是依靠測試人員的個人經驗和水平,不利于大規(guī)模工程項目的實

 0 引言

跨系統(tǒng)的業(yè)務場景是指業(yè)務需要在2個或者
2個以上系統(tǒng)/平臺進行操作或者數(shù)據(jù)流轉。聯(lián)調測試是針對跨系統(tǒng)的業(yè)務場景(即系統(tǒng)間外部接口)進行業(yè)務流和數(shù)據(jù)流的測試,不含系統(tǒng)自身的單元測試、內部集成測試和交付測試(含功能、性能和安全測試)。聯(lián)調測試可分為聯(lián)調功能測試、聯(lián)調非功能測試(含性能和安全測試)。測試內容主要包括:①依據(jù)系統(tǒng)需求規(guī)格說明書、詳細設計文檔及SOA相關標準,檢查接口是否遵循設計要求、安全規(guī)范;②通過自動化工具及人工驗證的測試方法,驗證系統(tǒng)間接口的規(guī)范性、數(shù)據(jù)匹配性、連通性及性能效率、接口系統(tǒng)配置合規(guī)性、應用及數(shù)據(jù)的安全性等,并驗證其抵御惡意攻擊的能力,以達到減少系統(tǒng)試運行調試成本的目的[1]。

當前,在電力企業(yè)大型管理信息系統(tǒng)工程建設中,尚缺乏針對跨系統(tǒng)缺陷定位和調試技術的專門研究,聯(lián)調測試基本上依靠的是測試人員的個人經驗和能力,導致了缺陷無法定位、缺陷定位不準確、調試效率低下等問題,無法滿足大規(guī)模信息系統(tǒng)工程建設測試的需要。因此,亟需建立一套完整的工作方法和流程,輔以相關的軟件工具,以指導聯(lián)調測試工作。

本文基于廣東電網(wǎng)大型管理信息系統(tǒng)建設工程中聯(lián)調測試的工作實踐,提出了一整套的跨系統(tǒng)缺陷定位和調試的方法,歸納和定義了常見錯誤類型,規(guī)范了測試工作流程,并對具體調試工作所需工具給出了建議。

 1 跨系統(tǒng)缺陷定位和調試的工作流程

跨系統(tǒng)缺陷定位的工作流程包括5個階段,分別是入口、調試準備、調試中、缺陷驗證以及調試總結,各個階段又包含各自的子過程。

1)入口:缺陷單描述缺陷的完整信息,能幫助調試人員復現(xiàn)缺陷。

2)調試準備:包括技術文檔收集、測試環(huán)境準備、調試工具安裝部署、報文或場景數(shù)據(jù)準備等子過程,交付物可以是測試用例(包含測試數(shù)據(jù))。

3)調試中:包含復現(xiàn)問題、收集過程記錄(日志、報文、數(shù)據(jù)庫、界面提示等)、假設原因、驗證假設、波及分析等子過程,交付物是問題指向主體說明文檔。

4)缺陷驗證:包含缺陷驗證、回歸測試等子構成,交付物是缺陷分析和修復報告。

5)調試總結:缺陷分析和修復報告。

 2 跨系統(tǒng)缺陷類型的定義

根據(jù)缺陷發(fā)生時的特征,將跨系統(tǒng)的缺陷劃分為7個大類、20個小類。

2.1 環(huán)境配置問題

環(huán)境配置問題主要涉及到網(wǎng)絡、中間件、數(shù)據(jù)庫、服務器、客戶端、操作系統(tǒng),這6類設備的問題可能導致接口無法聯(lián)通,或者接口性能無法滿足要求。

2.2 應用配置問題

應用配置問題主要有權限賬號配置、流程配置以及接口配置這3類問題。

2.3 接口連通性問題

接口連通性問題主要有兩方連通性、三方連通性、多方連通性問題。

2.4 接口規(guī)范性問題

接口規(guī)范性測試主要對請求/響應報文的格式、內容是否符合SOA應用技術規(guī)范和設計要求進行驗證,不符合接口規(guī)范性的問題,通常歸類為接口規(guī)范性問題。具體有以下幾類:服務命名問題、服務報文設計問題、服務實現(xiàn)問題、服務異常處理問題、大數(shù)據(jù)量處理問題以及其他相關約束問題。

2.5 接口一致性問題

接口一致性問題定位在應用系統(tǒng)服務的開發(fā)和實現(xiàn)是否嚴格遵守系統(tǒng)設計的規(guī)范和要求進行,包括應用系統(tǒng)的服務實現(xiàn)在命名、接口、功能、性能以及異常處理等方面與具體規(guī)格的設計描述保持
一致。

2.6 數(shù)據(jù)問題

各系統(tǒng)間數(shù)據(jù)交換時需要將基礎數(shù)據(jù)做好映射,即各系統(tǒng)間的基礎數(shù)據(jù)信息存在并保持一致。在數(shù)據(jù)交換時存在數(shù)據(jù)映射問題引起缺陷,此類問題定位數(shù)據(jù)映射問題;如在接口連通性測試時,SOA的響應報文返回的異常信息顯示“接口數(shù)據(jù)映射找不到”,此時的問題主體可能為接口數(shù)據(jù)映射。

2.7 業(yè)務邏輯問題

在實施接口功能性測試時,需要制定業(yè)務測試場景并且確保業(yè)務場景符合聯(lián)調實際測試需求,如果測試操作不符合操作手冊和應用集成設計說明書,將會導致測試失敗,接口不能成功調用或者不能查到接口響應消息,此缺陷則定義為業(yè)務邏輯問題。

 3 跨系統(tǒng)缺陷調試的方法和工具

3.1 跨系統(tǒng)缺陷調試的過程

跨系統(tǒng)缺陷調試的過程如圖1所示。

圖1 跨系統(tǒng)缺陷調試的過程Fig.1 Cross system defect debugging process

1)問題重現(xiàn)。當收到一個問題的報告時,應首先在測試環(huán)境進行程序的運行,觀察在當前環(huán)境下是否可以重現(xiàn)問題,以確認這個問題是一個偶發(fā)性現(xiàn)象還是一個真正的缺陷。經此步驟可以排除掉網(wǎng)絡端口不通等偶發(fā)性問題,使調試人員可以集中精力關注真正的缺陷。

2)信息收集。聯(lián)調環(huán)境包括多個應用平臺,牽涉到多個應用的時候,需要調試人員對系統(tǒng)架構了然于胸,清楚每一個應用在整個系統(tǒng)交換中的輸入、輸出、處理過程,以及每一個不同的模塊具體負責的功能。根據(jù)復現(xiàn)步驟,通過調試工具,收集并分析缺陷信息,包括問題表象、操作步驟、實際輸出的結果以及預期輸出的結果。除此之外,調試人員也需要收集其他相關專業(yè)的信息,如日志/報文信息、數(shù)據(jù)庫數(shù)據(jù)信息、界面顯示信息等。

3)提出假設。調試和測試的區(qū)別是,調試不僅要測試以發(fā)現(xiàn)缺陷,而且還要找出問題原因和問題解決方案。經驗豐富的調試人員可以根據(jù)已有的數(shù)據(jù)資料,大膽提出假設,如果假設有效則可以大大縮短調試所需時間。如果環(huán)境涉及多個平臺或有多個應用主體,可能需要多次嘗試才能形成有效的
假設。

4)驗證假設。在測試工具的輔助下,對相關應用運行并察看所涉及的日志、報文、數(shù)據(jù)庫數(shù)據(jù)、界面數(shù)據(jù)的變化,以驗證對于問題的假設是否正確。很多情況下,這個假設和數(shù)據(jù)流相關,按照數(shù)據(jù)流方向,對每個主體做正確性判定,找到問題指向主體。

5)對缺陷解決方案做相關性分析。一般而言,開發(fā)人員在解決缺陷過程中,關注的是缺陷的一個點,而作為一個軟件產品,需要注意的是整個軟件的全面表現(xiàn),因此需要對缺陷解決方案做相關性分析,保障回歸測試的充分性。

3.2 跨系統(tǒng)缺陷調試的方法
3.2.1 分解法

當在應用場景中測試問題時,需采用一系列的步驟來重現(xiàn)這個問題,分解法就是把一個要重現(xiàn)的問題分解成幾個最小的解決步驟,以更好定位缺陷。應用分解法可以實現(xiàn)以下目標:①每次只需要重新測試其中一個步驟,從而提高了測試的效率;②有效地隔離問題;③在測試過程的每一個步驟中只需要檢查系統(tǒng)中有限的一些癥狀,就能發(fā)現(xiàn)引起問題的原因,例如三方連通性缺陷,將問題分解為提供方-SOA間連通性和SOA-消費方間連通性。

3.2.2 追蹤法

在跨系統(tǒng)調試的過程中,追蹤事件的最精確的辦法是記錄并查看應用運行的報文/日志,通過查看報文/日志可以知道事件發(fā)生的時間、地點、操作步驟、環(huán)境因素和系統(tǒng)其他假設條件,同時記錄輸入、輸出以及處理過程。如果系統(tǒng)記錄的報文/日志己經有了正確的輸出,就不需要進行重新開發(fā)或者調試,同時這些正確的執(zhí)行記錄也為快速執(zhí)行回歸測試和問題重定義認證測試提供了有效參考。

數(shù)據(jù)追蹤法有幾種方式,最常見的是在應用內部嵌入相應的日志或者跟蹤信息,通過相應的記錄對其進行分析;還有一種是應用一些外部工具,截取傳輸報文,然后對相關的內容進行分析,例如SoapUI工具模擬接口報文數(shù)據(jù),向SOA發(fā)送數(shù)據(jù),SOA日志系統(tǒng)中記錄該報文信息及響應信息。

3.2.3 比較法

比較法是通過對比系統(tǒng)正常工作時的狀態(tài)和系統(tǒng)異常工作時的狀態(tài),從而發(fā)現(xiàn)其中的差異,以便快速定位缺陷。常見的差異情況有:①假定測試數(shù)據(jù)對問題影響;②假設最近的修改使系統(tǒng)出錯,導致bug突然出現(xiàn)。如果是第一種情況,就需要參考正確的測試數(shù)據(jù)案例,通過比較法,找到正常數(shù)據(jù);如果是第二種情況,則需要對版本進行比較,并進行針對性分析。

3.2.4 系統(tǒng)法

系統(tǒng)法就是從整個系統(tǒng)的功能方面來驗證缺陷,而不是只考慮相關的子系統(tǒng)功能或者單系統(tǒng)功能,只有這樣才能測試出接口的修改對整個系統(tǒng)的影響。系統(tǒng)法要求首先掌握系統(tǒng)的整體業(yè)務邏輯,以業(yè)務邏輯為基礎可以定位到引起問題的原因;其次了解系統(tǒng)的所有組成部分,理解不同的子系統(tǒng)或者單系統(tǒng)的接口。

在定位缺陷上使用系統(tǒng)法,必須追蹤每個模塊的輸入和輸出、系統(tǒng)運行的過程和接口調用模塊的結果。依據(jù)上述條件對系統(tǒng)進行過程測試,發(fā)現(xiàn)出現(xiàn)問題的部位,以便盡快以系統(tǒng)法解決問題。對于一個復雜的環(huán)境和系統(tǒng),通常很難對系統(tǒng)的總體架構、各個子系統(tǒng)的各個業(yè)務模塊和子系統(tǒng)之間的接口有著充分的理解,所以在進行系統(tǒng)測試時需要把開發(fā)系統(tǒng)的相關人員和測試人員集合在一起共同定位缺陷,這也是應用系統(tǒng)法的一個必要條件[3]。

3.3 跨系統(tǒng)缺陷調試的工具

1)SoapUI。SoapUI是一個開源測試工具,通過Soap/Http來檢查、調用、實現(xiàn)Web Service接口的功能/負載/規(guī)范性調試測試[4]。

2)Eclipse。使用Eclipse模擬發(fā)送數(shù)據(jù),通過查看busdown日志,來進行JMX接口的功能/規(guī)范性調試測試[5]。

 4 聯(lián)調測試案例分析

圖2為某

大云網(wǎng)官方微信售電那點事兒

責任編輯:售電衡衡

免責聲明:本文僅代表作者個人觀點,與本站無關。其原創(chuàng)性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關內容。
我要收藏
個贊
?