自動化測試范例6篇

前言:中文期刊網精心挑選了自動化測試范文供你參考和學習,希望我們的參考范文能激發你的文章創作靈感,歡迎閱讀。

自動化測試

自動化測試范文1

自動化測試就是希望能夠通過自動化測試工具或其他手段,按照測試工程師的預定計劃進行自動的測試,其目的是降低測試的勞動量,達到提高軟件質量的目的。涉及到測試流程、測試體系、自動化化編譯、持續集成、自動測試系統以及自動化測試等方面。

一、 軟件測試自動化的概念

軟件測試自動化就是執行用某種程序設計語言編制的自動測試程序,控制被測軟件的執行,模擬手工測試步驟,進行全自動或半自動測試。全自動測試指在自動測試過程中,根本不需要人工干預,由程序自動完成測試的全過程。半自動測試指在自動測試過程中,需要由手工輸入測試腳本或選擇測試路徑,再由自動測試程序按照人工指定的要求完成自動測試。

為保證軟件的質量,必須按照軟件工程的方法,在軟件生命周期的各個階段進行有效的管理和度量,軟件測試是軟件生命周期的重要階段。目前軟件測試普遍采用傳統的測試方法,即白盒測試和黑盒測試。在測試工具上大多采用手工測試,或編制一些簡單的測試程序進行測試,既耗時間又不規范。更大的隱患在于當將軟件分發給用戶使用時,常常會發生問題,嚴重時導致系統癱瘓。自動測試技術目的在于消除手工測試中人為的錯誤,加快測試循環,有效利用資源,提高工作效率。同時,使測試具有一定的規范性,提高測試的可重復性。

二、軟件測試與自動化的聯系

測試是一種技術。根據IEEE的定義,軟件測試是使用人工或自動手段來運行或測定某個系統的過程,其目的在于檢驗它是否滿足規定的需求或弄清預期結果和實際結果之間的差別,盡可能發現存在的缺陷。它的目標是以較少的測試用例、時間和人力找出軟件中潛在的各種錯誤和缺陷,以確保系統的質量。

自動測試也是一門技術,但與測試技術有很大不同。自動化測試是利用策略、工具以及產出等,減少人工介入到非技術性、重復性、冗長的測試活動里,從而達到無人監守完成測試,并自動產生測試報告,分析測試結果等一系列活動。自動化測試的目標是對被測試系統進行自動測試??偟膩碚f,自動化測試的目的就是用較少的開銷,獲得徹底的測試,并提高產品的質量。

軟件測試是由一系列有序活動組成的,始于測試計劃,著重測試開發。軟件測試自動化是針對這一系列活動及其管理的自動化,包括軟件測試過程規范管理的自動化和軟件測試活動的自動化。

無論自動測試還是手工測試都不影響測試的有效性,即測試的有效性和測試方式無關。測試腳本的設計與選擇和測試質量有著直接關系,好的測試腳本方案應該可以以有限的數量發現軟件中的大部分缺陷。因此選擇何種測試腳本進行測試十分重要。實驗和經驗表明隨機選擇測試腳本并不是測試的有效方法,好的測試方法應該是開發好的測試腳本。

什么樣的測試腳本是好的測試案例?有四個特性可以描述測試腳本的質量,它們分別是有效性,可拓展性,經濟性和可維護性。監測軟件缺陷的有效性是最重要的一個方面。好的測試腳本應該是可拓展的??赏卣剐缘囊馑际牵@個測試腳本可以測試多項內容,這樣就有效減少了測試腳本的數量。另外還應從成本出發去衡量一個測試腳本的經濟性,包括測試腳本的執行、分析和調試是否經濟,以及測試案例的可維護性,即每次軟件變更后修改測試腳本的成本。

通常對這四個方面要進行平衡。例如,一個測試腳本可以覆蓋到很多的測試內容,但要其執行和調試的成本可能很大??赡茉诿看诬浖兏笮枰獙y試腳本進行大量的維護。一次高拓展性可能導致經濟性和可維護性比較低。因此測試技術不僅要保證測試腳本具有發現缺陷的高可能性,而且還要保證測試腳本的經濟性,避免過高的執行、分析和維護成本。

對于手動測試腳本來說,無論測試執行的次數是多少,其經濟性和可修改性都不會發生變化。然而對于自動化系統測試來說,在該測試第一次被執行時,其經濟性和可維護性都比手動測試腳本要低,但伴隨著測試的持續反復執行,自動測試的經濟性迅速增長,可維護性也伴隨著提高,當一個測試需要被重復執行時,自動化系統測試開始顯示它的價值。自動測試的方法越好,長期使用獲得的收益越大。

三、 測試自動化的現狀

目前對于軟件自動化測試主要有如下幾種方法:

1、手寫靜態測試自動化方法 該方法應用靜態的測試腳本和固定的測試腳本在被測應用的GUI上運行。這種自動化實際上只是體現在測試執行過程中,并且腳本需要反復調試,健壯性差。

2、隨機輸入自動化測試方法 這種方法的原理是讓計算機模擬真實用戶去進行各種GUI操作,只不過是測試過程本身涉及的行為是隨機產生的,順序也是隨機產生的,它雖然可以發現一些測試人員無法發現的缺陷,但機會是很偶然的,因為測試程序本身并不知道對于它所產生的每一步操作及被測軟件系統應該是如何反應的。

3、基于捕獲/回放(C/P)機制的測試自動化方法 這種方法的本質是由測試人員與包含被測GUI的軟件系統進行交互,基于C/P的工具負責將交互過程的場景和GUI操作捕獲,生成測試腳本,再將這些操作進行回放。其優點是腳本生成相對容易;但是缺點也很明顯,交互過程對測試人員的操作要求極高,并且腳本的可重用性非常差,對于回歸測試過程無法提供有效支持,這些缺點使得該方法無法完美解決GUI測試的主要問題。

4、基于模型描述的自動化方法 這種方法的關鍵是對被測系統的行為進行形式化表述,形成模型,然后采用有窮狀態機FSM ( Finite State Machine)從模型中產生測試腳本。通過這種方法產生的測試腳本可以有效的測試系統的具體行為是否滿足系統設計要求,同時可以根據測試標準有選擇地進行測試腳本生成和運行,但是缺點在于目前的系統規模越來越大,對于系統行為的模型描述越來越困難。這也是為什么這種方法一直無法在業界推廣的一個主要原因。

四、測試自動化的挑戰

伴隨著開發及軟件所使用的技術的更新,軟件測試正面臨新的機遇與挑戰,圖形用戶界面GUI、分布式處理和龐大的分散網絡就是這些新技術的代表。

自動化測試范文2

關鍵詞 Web;自動化測試;測試框架;數據驅動

中圖分類號:TP311 文獻標識碼:A 文章編號:1671-7597(2013)11-0000-00

隨著Web應用的日漸龐大和復雜,Web應用的測試越來越得到人們的重視,同時對Web應用的測試的要求也更高。研究表明,一種良好的自動化測試技術可以實現許多手工測試不能完成的工作。同時,自動化測試技術大大減少了產品的周期和軟件的測試成本,軟件測試的效率和速度也有了顯著的提高。所以,軟件開發組織測試工作可以采用自動化測試方法,同時結合相應的測試框架進行,這樣,既提高了效率,又降低了維護成本。

自動化測試框架是一個由假設、概念以及自動化提供支持的實踐的集合?,F在,許多企業和個人都認識到Web自動化測試框架的重要作用,并積極投身于其研發中,并不斷有新的框架出來。本文中描述了幾種常用的自動化測試框架,并在此基礎上,研究了一種實用性強的開源Web自動化測試框架。

1 自動化測試的優缺點

自動化測試之所以得到人們重視,是應為其具有其他測試所無法替代的優點,概括一下有以下幾點:1)效率高,測試時間大大減少。2)降低了測試成本,減少了開銷。3)比手工測試完成的測試范圍更廣。4)測試可靠性、一致性和可重復性好。5)工作質量提高,資源利用好。6)軟件推向市場時間更短。7)測試的復用性高。

盡管自動化測試有諸多優點,但在測試中仍然存在一定的局限性,具體表現如下:1)自動化測試并不適用于每種情況。2)測試的有效性并沒有提高。3)自動化測試工具不具靈活性。4)對測試質量的依賴非常大。5)有時對軟件開發有一定的制約。6)沒有手工測試發現的缺陷多。

通過以上分析可知,讓自動化測試完全取代手工測試是行不通的,只有將手工測試與自動化測試很好的結合在一起,才會發揮各自的優勢,測試效果才會更好。

2 幾種常用自動化測試框架

以下為幾種常用的自動化測試框架,它是研究人員為解決腳本維護性問題而設計的。以這些自動化測試框架為基礎,結合自己的經驗與需求即可以設計出適合自己的自動化測試框架。

2.1 腳本模塊化框架

該框架用創建的獨立的小腳本代替被測試應用程序的函數和模塊,采用分層的方式完成測試。腳本的實現層作為底層,測試用例的組合層作為上層。腳本模塊化框架應用了封裝和抽象的原則,提高了測試套件的可維護性。為掩蓋應用程序的其他部分采取在一個部件前構建一個抽象層的方式完成。該框架易于掌握和精通。但因其底層腳本的實現依賴應用程序的功能,故缺乏靈活性。

2.2 測試庫構架框架

測試庫構架框架與腳本模塊化框架很相似,只是其將應用程序分解后創建的不是腳本,而是過程和函數。被測對象的功能或模塊通過創建庫文件來描述,測試用例腳本直接調用這些庫文件。這樣,抽象度更高,測試用例組裝更加靈活。

2.3 關鍵字驅動測試框架

該框架又叫表驅動測試框架,是一種比較理想的自動化測試框架。其測試邏輯的描述采用關鍵字和數據表實現。這些關鍵字和數據表可以用來“驅動”測試腳本代碼,并獨立執行測試工具,是應用程序和自動化測試框架彼此獨立。這種測試方式與手工測試很像。

2.4 數據驅動測試框架

數據驅動測試框架是從特定的文件(如Excel文件、OOBC源文件、CSV文件、ADO對象文件等)中,把測試的輸入和輸出數據獨立出來,通過變量傳入測試腳本中。這些變量就是測試數據用來傳遞和驗證應用程序的。在整個過程中,測試動作的控制(如數據文件的讀取,測試信息和記錄測試狀態等)寫進測試腳本中;測試數據不寫進腳本,而只包含在數據文件中。這里,測試腳本只是一個傳送數據的機制,或僅是一個“驅動”。

數據驅動測試框架是測試不同的輸入、輸出采用相同的測試過程,并將測試輸入和預期輸出以表的形式組織起來,一個測試作為表中一行。測試過程就是從表中逐行讀入,即可實現執行每個測試輸入和檢驗預期輸出。將數據驅動測試過程以表組織在一起,執行新的測試就可以反復使用這個過程。這種測試需要執行的腳本大大的減少,大量的測試用例僅需少量的腳本就可實現,對由許多不同數據選項的應用非常有效。

3 開源Web自動化測試框架的研究

3.1 設計思路

本框架以開源框架Selenium為基礎,進一步設計了此框架的“私有語言”,也就是數據驅動文件的編寫規則。數據驅動文件的解析程序的實現就以這些“私有語言”為依據,Web應用的測試執行框架也是由這些“私有語言”和Selenium合并組成。依據這些編寫規則,測試人員把數據和對Web應用的操作行為寫入數據驅動文件中,測試框架負責對這些數據驅動文件進行解析,將這些解析后的數據傳入并調用Selenium API的相應方法,從而使其自動執行。

3.2 框架結構

該框架是基于數據驅動的測試框架,并在其基礎上進行了一些改進,開源Web自動化測試框架結構如圖1所示。

此框架中,在Server端安裝被測試Web應用,可以供遠程訪問,方便測試。Extended Selenium RC System作為測試執行引擎安裝在Client端,它是本框架的核心,數據驅動文件解析系統是采用開源自動化測試工具Selenium開發的。它的主要功能是通過解析數據驅動文件,得到解析后數據及Web操作,而后調用Selenium API的方法,并將數據作為參數傳入,這樣對遠程Server的操作即可實現。當Server的響應到達Client,Client進行各種元素驗證,記錄日志文件及保存測試結果等操作。測試工程存放在Project文件夾中,主要由若干XML數據驅動測試文件組成,在Project_Config.xml測試工程注冊文件中對各種數據驅動文件完成統一的注冊,然后又Extended Selenium RC System按注冊的向后順序對各XML文件依次進行解析。

3.3 設計數據驅動文件

相關操作和數據的文本文件構成了數據驅動文件。由自動化測試工具私有語言手動編寫這些文件,接著對其變量賦值,并作為測試數據輸入。這些變量使解析程序能通過外部的數據來驅動應用程序。軟件自動化測試的一個重要環節是數據驅動文件的開發和維護。對測試文本做合理地修改和調整,可以擴大測試覆蓋面,增加測試腳本靈活性,并且對被測試對象變量的應對能力大大提高。

本框架中,設計數據驅動文件的“私有語言”是重點,其設計包括以下幾個方面。

3.3.1 對Web操作行為的定義

這一部分包括頁面中數據的輸入和對頁面的各種操作。例如:將數據“efg”輸入到頁面標簽中,具體設計如下:

< parameter value=”efg”/>

其中,方法結點用表示,表示向頁面標簽中輸入數據。具體想哪個頁面標簽輸入數據用表示,其中value屬性可以是name或id等,表示定位關鍵字。具體輸入哪個數據,用第二個 表示,value屬性中放內容值。

3.3.2 驗證部分

這部分是完成對頁面標簽及數據驗證操作。同操作部分一樣,方法結點與API的方法名稱一致。例如:驗證上例中頁面中是否存在“efg”文本,具體設計如下:

其中與Selenium API中的isTextPresent(“”)方法相對應,表示要驗證的內容結點,Value中放具體內容,本例中放的是文本“efg”。本例可以實現對頁面中是否存在文本“efg”的驗證。

3.3.3 設定測試環境

若Web應用要運行在不同操作系統上,就需要設計不同版本,雖內容差別不大,但若設計不同的測試工程,則工作量會大大增加。這個問題的解決,可以采取在同一數據驅動文件中寫入不同版本的數據驅動文件來解決,并只需用測試環境結點加以標準區分,就可以在解析文件過程中通過操作系統類型與測試環境結點屬性值得對比,來判斷是否進行解析。

除了以上三個方面,還應對結點名稱到API方法名的映射及結構等進行合理的設計,從而使數據驅動文件可控性更強,更具靈活性及更便于解釋。

4 測試流程

首先將編寫完的數據驅動文件添加到測試平臺。接著解析數據驅動文件,實現測試腳本到執行引擎的映射。然后向Web服務器發送HTTP請求來模擬真實用戶訪問Web的場景,獲得測試結果信息。最后,對得到的數據進行分析,得出測試報告及生成日志。

5 結束語

本文以數據驅動方法為基礎,提出一種開源Web自動化測試框架,重點研究了數據驅動文件的編寫規則。本測試框架可以應用不同的工程項目中,具有開發門檻低、獨立性強、效率高等特點。特別適用于需要反復測試的回歸測試階段,大大提高了企業的經濟效益。

參考文獻

[1]賴利峰,劉強.Web應用程序的一種功能自動化測試模型與實現[J].計算機工程,2006,32(17):42-44.

[2]朱少民.軟件測試方法和技術[M].北京:清華大學出版社,2005.

[3]朱菊,王志堅,楊雪. 基于數據驅動的軟件自動化測試框架[J].計算機技術與發展,2006,16(5):68-70.

[4]李曉會.Web系統自動化功能測試框架研究與實踐[D].北京:北京郵電大學,2011.

[5]樊付星,黃大慶,周未.基于Web的自動化測試框架的研究與實現[J].電子設計工程,2012,20(20):36-38.

[6]黃僑,葛世倫.開源Web自動化測試框架的改進研究[J].科學技術與工程,2012,12(15):3630-3635.

[7]馬春燕,朱怡安,陸偉.Web服務自動化測試技術[J].計算機科學,2012,39(2):162-169.

[8]Mike K. Choosing a Test Automation Framework[S].IBMDeveloper.

自動化測試范文3

關鍵字:軟件測試;自動化測試;手工測試

1引言

無論采用哪種開發模型所開發出來的軟件系統,由于客觀系統的復雜性,加上人的主觀認識不可能完美,每個階段的技術復審也不可能毫不遺漏地查出和糾正所有的錯誤,再加上編碼階段也必須會引起新的錯誤,所以在軟件使用以前必須經過嚴格的軟件測試,通過測試盡可能找出軟件開發各階段的錯誤,從而得到高質量的軟件。它不只是為了保證軟件系統本身高質量,也保證整個軟件開發過程是高質量的。不僅如此,軟件測試還為風險評估準備信息,給開發人員或程序經理提供反饋信息。

軟件測試可用手工來完成,目前大部分都是采用此測試方法。但是,軟件測試的工作量很大,據統計,測試會占用到40的開發時間;一些可靠性要求非常高的軟件,測試時間甚至占到開發時間的60。而測試中的許多操作是重復性的、非智力性的和非創造性的,并要求做準確細致的工作,計算機就最適合于代替人工去完成這樣的任務。這種讓計算機來代替人的部分手工測試工作的測試方法,我們稱之為自動化測試。它的準確定義是使用一種自動化測試工具來驗證各種軟件測試的需求,它包括測試活動的管理與實施,測試腳本的開發與執行。自動化測試使測試過程簡單并有效率,使測試過程更為快捷,沒有延誤。這就好比進行一項商業交易,我們已經知道了交易的具體過程,而我們所要做的是設計一套自動化的方法,使交易過程更簡單,成本更低。

2自動化測試完成的工作

2.1前期準備工作

在對一個軟件系統進行測試之前,我們可以先改進被測試的產品,使它更容易被測試。有很多改進措施可以幫助測試人員更好的使用產品,也可以幫助測試人員更好的測試產品。比如一些產品很難安裝,可以直接改進產品的安裝程序,或者是開發一套自動安裝程序,目前有很多專門制作安裝程序的商用工具。

我們也可以利用工具在測試執行的日志中查找錯誤,利用手工查找報錯的方法容易讓人感到乏味且易遺漏。這時我們可以仔細了解日志中記錄的錯誤信息格式,寫出一個錯誤掃描程序,使查錯自動化。

2.2需求分析

正如軟件生命周期有需求分析階段一樣,在制定測試方案之前也需要收集需求。定義自動化測試項目的需求要求我們全面地、清楚地考慮各種情況,然后給出權衡后的需求,并且可以使測試相關人員更加合理的提出自己對自動化測試的期望。

開發管理者、測試管理者和測試人員實現自動化測試的目標常常是有差別的。除非三者之間達成一致,否則很難定義什么是成功的自動化測試。為了避免這種情況,需要在自動化測試需求上保持一致。應該有一份自動化測試需求,用來描述需要測試什么。測試需求應該在測試設計階段詳細描述出來,自動化測試需求描述了自動化測試的目標。

2.3自動化測試工具的選擇

我們可以自己根據要測試的軟件系統自己開發一個測試工具,但花費代價較大,鑒于此我們可以使用已成熟的測試工具。對于測試工具的選擇,要有專人針對不同的自動化測試,去評估究竟該使用哪種測試工具比較好。自動化測試工具又分單元測試工具、功能自動化工具和性能自動化工具,其中又分開源的和商業工具。究竟哪種工具更適合自己平臺的測試,還需要有專業人員進行評估。

2.4自動化測試方案的制定

自動化測試方案包括指明測試中需要什么樣的數據,并給出設計數據的完整方法;需要明確測試設計的細節描述,還應該描述測試的預期結果;完成測試設計文檔,需要描述清楚測試設計的思路;編寫測試腳本。對于腳本的開發我們需注意以下問題:

第一、開發腳本必須遵循一些規范化,就類似于程序員編程規范一樣。我們的測試腳本就好比是我們測試人員的程序,同樣要形成一個編寫規范。因為養成這樣的好習慣,是為了能方便維護腳本,避免增加后期的維護量和方便使用者使用;

第二、保證開發的腳本回放沒有問題的基礎上,適當增加出錯處理來增強腳本;

第三、后期還可以在腳本中加入檢查點,這樣做的好處可以把原來需要人工去校驗的地方讓腳本去做;

第四、在腳本中增加數據驅動方法,使腳本能覆蓋更多的分支路徑,進一步提高腳本的集成度。因為前面已經說過了,腳本是不會執行那些沒有被編寫進去的功能點的,所以說后期測試人員一旦發現這個地方有必要讓腳本來代替手工進行執行,就可以不斷的增強我們的自動化腳本。

2.5可行性分析

可行性分析是指驗證自動化測試項目的可行性,盡可能快地驗證你采用的測試工具和測試方法的可行性,站在產品的角度驗證產品采用自動化測試的可行性。同時要確定測試工具和測試方法對于被測試的產品和測試人員是否合適。選擇一個快速,有說服力的測試套,它是評估測試工具的最好的方式,它可以證明你所選測試工具和測試方法的正確性。

2.6自動化測試的維護和擴充

自動化測試是一個長期的過程,為了與產品新版本的功能和其他相關修改保持一致,自動化測試需要不停的維護和擴充。自動化測試設計中考慮自動化在未來的可擴充性是很關鍵的,不過,自動化測試的完整性也是很重要的。如果自動化測試程序報告測試用例執行通過,測試人員應該相信得到的結果,測試執行的實際結果也應該是通過了。其實,有很多存在問題的測試用例表面上執行通過了,實際上卻執行失敗了,并且沒有記錄任何錯誤日志,這就是失敗的自動化。這種失敗的自動化會給整個項目帶來災難性的后果,而當測試人員構建的測試自動化采用了很糟糕的設計方案或者由于后來的修改引入了錯誤,都會導致這種失敗的測試自動化。失敗的自動化通常是由于沒有關注自動化測試的性能或者沒有充分的自動化設計導致的。

3自動化測試應用的范圍

自動化測試并不是要求全程自動化,使用自動化測試代價也非常之高。自動化測試主要是用在存在大量重復性的手工測試項目和測試時間比較長的項目。很多測試小組都是在回歸測試中采用自動化測試。所謂回歸測試指在修改了原軟件后,對其重新進行測試以確認修改沒有引入新的錯誤或導致其他代碼產生錯誤。它通常使用相同的測試用例和測試方法,自動化測試方法最適合。關于系統中模塊的測試,對那些最有可能出問題或者不會破壞原先設計的重構任務進行自動化測試,性價比最高。

自動化測試絕不能代替手工測試,它只是手工測試的補充。對于那種不穩定軟件的測試,開發周期很短的軟件,一次性的軟件等不適合用自動化測試。自動化測試是使用工具進行測試,工具本身并沒有想象力和靈活性,根據報道,自動化測試只能發現15的缺陷,而手工測試可以發現85的缺陷。合理的運用自動化測試可以大大提高工作效率,反之則會是無休止的噩夢。無論測試自動化多么強大,現階斷,仍然是以手工測試為主。

4自動化測試的優勢與不足

軟件測試中,手工測試不夠全面和徹底,因為它花費了很多時間。代碼在修改或添加之后,運行預定義的人工測試集來保證修改不會產生新的問題。人工測試花費的時間越來越多,并給開發者帶來挫折感,打擊他們執行測試的積極性。而且,測試的工作量使得開發者不愿意改進或優化現有的代碼。

當開發者測試他們自己的代碼時,他們總是不愿意執行最苛刻的測試用例,因此就導致了最

有可能出錯之處也是最不可能被全面測試到這樣的情形。自動化測試無需人工干預就可以完成,它們縮短了開發過程。而且由于自動化測試可以簡單快速的發現修改的代碼是否能有效地運行,因此也就鼓勵開發者優化和改進現有的代碼。

測試自動化往往對測試人員的技術水平要求很高,測試人員必須充分理解自動化測試,但是,自動化測試不利于測試人員積累測試經驗。

不要強行在測試的每個部分都采用自動化方式,尋找能夠帶來最大回報的部分,部分的采用自動化測試是最好的方法。可以采用手動確認測試和自動化測試相結合的方法。

5結論

任何工作的開展并非一朝一夕,新技術的開展將需要投入大量人力物力,而自動化測試就是我們測試工程師必須要堅持的一個長期的發展方向。為了不至于做事只做表面,建議每個測試團隊中都必須要有專人去負責推動自動化工作的開展。還必須有專人負責維護腳本,規范腳本,甚至可以引入配置管理工具來統一管理腳本和把經驗文檔化。只有這樣我們的測試財富才會從中不斷積累,只有這樣自動化測試才能走得更遠。

參考文獻:

[1] 《軟件工程與軟件測試自動化教程》,張克東,電子工業出版社

自動化測試范文4

摘要:本文講述電力系統遠動自動化測試基本功能,并結合測試儀在工程應用解決實際問題的案例,說明測試儀是一種快速準確判斷自動化通道故障的高效手段。

關鍵詞:電力系統;通道;規約;遠動測試系統

0引言

隨著電力行業的高速發展,電力調度自動化系統也得到了規模建設,且逐步占據了更加重要的地位。種類眾多的自動化設備而帶來的復雜的電力規約,再加上方式多樣、網絡拓撲結構日趨復雜的通信傳輸通道是電力調度自動化系統面臨的新形式。在這種新形式下如何對自動化通道故障快速定位,實現通道資源的有效管理,如何確保電力自動化系統的正常運轉、及時發現其中存在的隱患,這些都是調度自動化系統維護工程師會面臨的問題。

在自動化系統中,遠動通道是連接主站與子站系統的一個十分重要的環節[3],站端設備所采集的所有數據都要通過通道上傳給主站,供主站分析和使用。而主站對廠站設備的操作命令也是通過通道下達到變電站自動化設備的。所以通道是連接主站與站端的神經,遠動系統能否可靠穩定地運行,在很大程度上取決于遠動通道是否可以很好地工作。自動化系統是一個復雜的網絡通訊系統,有效地維護它需要結合多種手段,不是單一的通道測試、單一的規約分析可以完成的。電力遠動測試系統是一個綜合的測試系統,其具備從物理層、數據鏈路層、規約層及應用層的綜合測試能力。

1電力遠動測試系統功能

該測試系統由便攜式測試儀和軟件測試平臺兩部分組成,如圖1所示,測試儀可獨立或與軟件測試平臺組合使用,測試儀與軟件平臺間采用高速的USB接口互連,數據可在兩個平臺間實時交互。便攜式測試儀采用32位處理器、實時嵌入式操作系統、超大液晶顯示、觸摸屏輸入,可獨立于軟件平臺進行通道測試、誤碼測試、規約測試、模擬主站、模擬子站的初步測試,支持RS232、FSK模擬四線、RS485、RS422、CANBUS、以太網等多種數據接口,能滿足自動化專業常用的各種通道測試需求。軟件測試平臺是基于windows操作系統的平臺軟件,與測試儀配合可方便地實現各種復雜測試、分析、存儲。

圖1遠動測試系統組成

測試儀有通道測試、規約測試、模擬主站和模擬從站四大功能。同時采用手持測試和直觀的界面,給使用人員帶來極大的方便。

1.1通道測試功能

在通道測試功能方面,該系統集成了數字示波器功能,能直觀地看出對各種數字及模擬通道的信號完整性,如圖2所示,其中圖2 a)為手持測試儀界面,圖2 b)為軟件測試平臺界面。能夠測量模擬通道FSK調制信號的中心頻率、頻偏、信號真有效值、電平、數據傳輸波特率,能實時顯示被測通道信號波形,可放大、縮小、暫停顯示,并可存儲波形數據等。數字通道能測量信號幅度、傳輸波特率、波特率抖動等。

a)手持測試儀測試界面b)軟件測試平臺界面

圖2通道測試功能界面

在誤碼測試方面,能有效地對各種數字及模擬通道進行誤碼測試,量化通道傳輸質量。支持誤碼(以比特為單位)測試、塊差錯測試、誤碼秒測試和自定義測試等。

1.2規約分析功能

規約測試方面具備規約分析和報文捕獲兩大功能,如圖3所示,其中圖3 a)為手持測試儀界面,圖3 b)為軟件測試平臺界面。規約模塊具備良好的可擴充性和接口規范性,支持IEC870-5-101、IEC870-5-103、IEC870-5-104、DISA、CDT、部頒CDT、DNP3.0、SC1801、XT9702等自動化常用規約,并可根據需要靈活擴充。

a)手持測試儀規約分析界面 b)軟件規約分析界面

圖3規約分析功能界面

1.3主站模擬

模擬主站可模擬主站全部四遙(遙信,遙測,遙控,遙脈)數據;可發送報文列表,功能強大;可手動編輯報文發送;可模擬規約所規定的主站模式。主站模擬界面如圖4所示,其中圖4 a)為手持測試儀主站模塊模擬界面,b)為軟件主站模塊界面。

a)手持測試儀主站模塊界面 b)軟件主站模塊界面

圖4模擬主站功能界面

1.4從站模擬

模擬從站可通過配置數據庫靈活設定從站通訊參數、規約參數、工程數據、數據點號、數據描述、數據轉換、數據計算等;可模擬規約所規定的從站模式。模擬從站界面如圖5所示,其中圖5 a)為手持測試儀從站模塊模擬界面,b)為軟件從站模塊界面。

a)手持測試儀從站模塊界面b)軟件從站模塊界面

圖5模擬從站功能界面

2工程應用

我局購置遠動自動測試系統,多次用于故障快速定位、復雜通道故障原因分析和新建變電站自動化設備投運等工作,大大提高了故障定位速度和準確性,提高了電力供電系統的產生效率。

2.1規約分析功能的應用

在集控站的建設過程中,曾發生過一次主站能正常接收報文,但前置程序解析后的遙測數據與子站始終不對應的現象。經主站和子站廠家共同檢查分析,均確認各自配置正確,傳輸通道進行環回測試也沒有誤碼,故障排查陷入僵局。自動化專業拿出遠動測試系統傳輸通道上進行規約測試,發現子站發送的CDT遙測報文分重要遙測、次要遙測和一般遙測三部分傳送,而在主站前置程序上只有重要遙測部分,其他遙測數據均無法解析,導致主站與子站遙測不對應。我們將規約測試結果告知廠家,修改規約配置文件后數據恢復正常。

2.2通道測試功能的應用

某局曾發生過一起正常通訊的變電站將老舊的載波設備更換為先進的光傳輸設備后,自動化數據中斷的案例,通訊人員再三檢查也找不到原因。通訊人員采用常用的磁石話筒聽音,自動化數據已送到通訊設備,確認在改造前聽到的信號音與現在相同。于是我們用遠動測試系統,在通訊進線端子處進行規約測試,發現報文正常,至此故障排查陷入盲區。再次使用遠動測試系統進行了通道測試,發現測試通道電平明顯偏低。最后發現自動化出線端安裝有一個通道防雷器,在防雷器的進線端測量通道電平在正常范圍,將通訊線臨時改接在防雷器前端后,主站端數據正常。利用通道測試功能,還曾經成功排除一起遙控操作有時能成功有時不成功的案例,最后檢查的結果是因為該站采用模擬通道,而主站端和子站端的頻偏設置不對應,導致通道誤碼嚴重。

2.3誤碼分析功能的應用

隨著綜合自動化系統和集控主站系統的建設,我局所有直管變電站均已實現了無人值守,集控人員除例行巡視和檢修等一些特殊情況需到現場做安全措施外,大量的單一分合斷路器與調整分接頭的操作均通過遙控操作實現,但我們時常接到運行人員的通知,某某站遙控操作不成功,但遙信遙測數據接收正常。有一段時間,龍馬集控就連續幾天發生某站遙控不能操作的現象,通訊人員進行通道環回測試正常,我們檢查自動化設備也是正常的,主站接收報文正常,發送報文也是正確的。采用遠動測試系統,甩開兩端的自動化設備,一端掛接遠動測試儀,一端環回,利用遠動測試儀的誤碼測試功能,導入一段從主站導出的通訊報文循環發送,結果發現該通道有間斷性誤碼發生,進一步縮小環回范圍,最終找到故障點在主站側通訊卡接端子的下行線接觸不良,導致下行通道間斷誤碼,最終影響了遙控。

2.4模擬主站/子站功能的應用

該功能在新建變電站自動化設備投運前的通道調試中效果非常顯著,我們就曾經使用該功能順利完成了好幾個調試時間很緊張的變電站的接入調試。在變電站投運前,因多種因素導致投運時間已確定,但光纖要隨輸電線路在投運前的2天才能架設到位,光纖到站后還得給通訊人員預留通道調試時間,自動化專業只能完成必須進行的四遙試驗,如果通道或規約出現問題,試驗很難完成。我們配合廠家技術人員提前完成變電站當地后臺的所有試驗,提前完成主站端圖形繪制、數據庫定義、圖庫關聯、通道配置等,將站端轉發表導入遠動測試系統,用遠動測試系統模擬子站功能,完成了主站的模擬調試;在站端使用遠動測試系統的模擬主站功能,核對了通道配置、規約設置等。在通訊專業將通道完整移交給自動化專業后,我們只用了一天時間就在主站端對所有設備進行了一次真實的四遙試驗,保證了該站的按期正常投運。

上述故障,如沒有遠動測試系統,單憑萬用表和人工經驗是很難及時準確排除故障、找到原因的??梢娺h動測試系統在實際應用中十分有價值。

3結論

遠動通道是變電站自動化系統與調度自動化主站系統聯系的紐帶[3],也是自動化系統的生命線,如何確保生命線的暢通成為自動化專業和通訊專業都需要面臨的一項艱巨任務,遠動測試系統在遠動通道故障快速定位、通道復雜故障分析測試、自動化設備投運預驗收等環節都起到了舉足輕重的作用。

參考文獻:

[1]劉連浩,劉亮華,沈增暉.基于IEC104規約的電力遠動測試系統的設計與實現[J].現代計算機,2008(5):107-109.

[2]陳少中,武建華.遠動規約測試及故障分析系統[J].內蒙古電力技術,2009(B07):147-149.

自動化測試范文5

關鍵詞: 自動化測試;面向業務;自動化測試框架

0 引言

傳統自動化測試,通常針對被測系統特點專項開發自動化測試腳本,當系統功能變更頻繁時,自動化測試維護成本很大;測試資產不便于統一的管理,重要測試資產不便于積累和復用;另外,自動化測試對測試人員的開發技術要求,限制了自動化測試的大規模普及和推廣。為此,本文給出了一種業務與技術分析、腳本與數據分離的面向業務的測試框架BOSATF(Business Oriented Software Automated Testing Framework)。

1 BOSATF架構設計

1.1 架構設計原則

業務邏輯和測試腳本分離:框架提供協同工作平臺,業務人員設計業務組件和業務流,自動化測試技術人員關注具體自動化腳本的開發,兩個角色分工明確、高效配合。

測試腳本和測試數據分離:腳本和數據分別獨立構建,同一測試腳本適用不同的測試數據,并使得腳本和數據的變更對整個測試工程的維護量降到最低。

框架功能模塊高內聚低耦合:分層架構設計,模塊內功能專一,模塊間功能獨立,在滿足自動化測試框架基本功能需求的基礎上,減少框架維護工作量。

1.2 分層架構設計

BOSATF由資源層、構建層、控制層、服務層和基礎函數層等五大組件構成。

資源層提供框架運行過程中所需要自動化測試腳本、測試用例、測試數據和業務流程。各類資源邏輯上互相獨立。

構建層負責資源層調度和管理,實現腳本、數據、用例、業務流程的統一管理,為構建層提供一致。

控制層協調構建層基礎服務,遵循測試執行計劃和測試機群管理規則,按照計劃分配測試資源,保證測試執行有序進行。

服務層主要功能有日志信息的收集、缺陷的管理、測試過程中錯誤場景的恢復以及測試報告的生成。

基礎函數層主要提供框架運行過程所需要的通用功能,包括日志管理、字符串格式轉換、身份證號生成、保費校驗和移動設備控件識別等功能。

2 BOSATF功能模塊

2.1 測試用例管理

采用“業務流程分析法”,遵循“合并”和“拆分”原則,把手工測試案例轉化成自動化測試案例,并建立映射關系,明確手工測試和自動化測試的對應關系,讓測試人員實時掌握自動化測試進度,以便及時制定和調整測試執行方案。

實現自動化測試用例和成熟測試管理工具的互聯互通,實現測試用例的導入、導出和多模式測試用例管理功能。

2.2 測試數據的管理

部分中間業務流程測試數據的準備時間占總測試周期的30%。針對這個問題,框架支持測試數據自動生成功能。根據被測功能特點,定制測試數據生成策略,批量自動生成測試數據。

框架同時提供“一次性數據”解決方案。針對部分業務模塊測試數據無法恢復的情況,框架記錄測試歷史數據,避免數據的重復使用。

2.3 業務流程定義模塊

該模塊提供了可視化業務流程定義功能,降低了框架使用的技術難度。通過該模塊,測試人員無需關注技術細節,只需要從業務人員視角定義業務操作流程,實現自動化測試腳本的自動組裝。

2.4 測試執行管理

測試執行管理模塊調用測試腳本、測試用例、測試數據、業務流程定義等相關服務,分配硬件執行機器資源,執行測試計劃。同時,收集測試執行過程信息,為服務層的缺陷管理、測試報告管理提供基礎數據依據。

2.5 場景恢復模塊

目的是在出現故障的情況下能盡快的恢復系統,保證能快速、準確地正?;謴蜏y試場景。根據故障的不同,明確地定義恢復的策略,制定不同的恢復機制,確保自動化測試在可預知風險前提下,快速恢復測試場景,按計劃執行測試案例,保證測試進度。

2.6 缺陷管理模塊

該模塊采用與常用缺陷管理工具(QC、BugFree、JIRA)集成的辦法,提供對發現缺陷的管理功能。支持缺陷狀態的自定義,實現缺陷的自動提交,測試處理進度的自動追蹤。

2.7 測試報告模塊

以測試執行過程日志記錄為基礎,結合測試計劃、測試執行管理等基礎信息,提供多模式(TXT,Excel,Word,PDF)測試報告生成功能。

2.8 測試機群管理模塊

該模塊在實現自動化測試框架基本功能基礎上,結合虛擬化IT運維趨勢,開發了基于虛擬機技術的機群管理模塊。

測試機群從職責上劃分為五類:自動化控制調度服務器、資產管理服務器、資產備份服務器、測試執行機群及公共函數服務器。

3 結論

針對傳統自動化測試框架不足之處,結合實際工作需求,提出了一種面向業務的軟件自動化測試框架-BOSATF。它獨立于自動化測試實施過程,作為專題項目開展工作,實現了業務流程管理和技術實現的分離,降低了自動化測試成本,提高了自動化測試大規模推廣的技術可行性。

該框架在實現自動化測試框架基本功能基礎上,結合虛擬化IT運維趨勢,開發了基于虛擬機的機群管理模塊。同時,框架提供了開放式集成接口,為與成熟的軟件測試管理工具互通集成提供了途徑。

實踐證明,該自動化測試框架功能豐富、擴展便捷,有效降低了自動化測試難度,提高了測試工作效率。

參考文獻:

[1]丁祥武、張欽、韓朱忠,SQL測試用例集的自動生成[J].計算機應用與軟件,2012,29(8):185-188.

[2]黃彪賢、熊建斌、李振坤,金融軟件功能自動化測試的分析及應用,計算機工程與設計,2012, 33(2):787-790.

自動化測試范文6

關鍵詞:電氣自動化 可靠性測試 設備

在20世紀50年代“自動化”一詞被提出,電力、電機等產品的出現催生了電氣自動化,而繼電器和接觸器的出現及應用使得機器可以按照人的意志和設定來完成事先安排好的判斷和邏輯功能,促使了電氣自動化的發展變革;在20世紀60年代,現代控制理論的提出和計算機的應用推進了自動控制和信息處理的結合進程,自動化進入綜合自動化階段,可以實現生產過程控制與管理的有效優化,電氣自動化得到了質的飛躍;在20世紀70年代,隨著通訊、IT、微電子等技術的快速發展,自動化對象逐漸延伸為大型復雜的系統,出現許多問題難以借助現代控制理論予以解決,通過研究這些問題使自動化理論和手段實現了革新,產生了綜合利用系統工程、計算機、人工智能、通信技術等高新技術,應用于復雜系統的高級自動化系統,促進了電氣自動化的快速發展;從20世紀80年代開始,電氣自動化得到快速發展,目前已經較為成熟,電氣自動化已是高新技術的重要組成部分,在工業、國防、醫學、農業等領域得到了廣泛的應用,極大地促進了人工智能、航空航天、交通、制造技術等諸多領域技術的發展,對國民經濟的發展起到了重要的作用。

1、電氣自動化控制設備可靠性測試的方式

要對電氣自動化控制設備的可靠性進行定量的評價,必須通過相應的測試方式來進行有效的測試。而當前我國對于電氣自動化控制設備可靠性測試的方式主要有三種,即實驗室測試、保證實驗及現場測試。

1.1實驗室測試

實驗室測試,顧名思義就是在實驗室內進行的測試,這種測試方式是依照規定,利用某一可控的條件或者是環境條件,模擬設備使用過程中的使用條件,使被測試的設備可以如同在使用現場中遇到的應力一樣進行試驗,然后將累計的失效數與時間等數據經過數理統計,進而得出設備的可靠性指標。這是一種模擬的可靠性較高的試驗,但這種方式很容易受到測試條件的限制。

1.2保證試驗

保證試驗是設備在出廠之前所進行的一種無故障性質的測試,又被成為“烤機”。這種測試方式主要是對設備可靠性進行保障的試驗,需要的時間較長,對于那些大量生產的設備而言,只能通過對設備樣品進行試驗的方式來進行檢測;另外,該方式在那些電路相對復雜、可靠性要求相對較高且生產數量又不是很多的自動化設備的測試實驗中比較適用。

1.3現場測試

現場測試的方式就是在使用現場對電氣自動化控制設備所進行的可靠性的測試,通過對各種可靠性數據的記錄、統計及分析,得出設備可靠性運行的基本指標?,F場測試可以分為三種情況,一種是在線的測試,測試的過程中,設備不需要停止運行;一種是停機的測試,測試過程中,設備需要停止運行;另外一種就是脫機的測試,也就是將被測試的設備或者是部件從系統運行現場去除,放到某一專用的測試設備上進行測試。盡管這一方式的工作環境相對真實,且需要測試設備的數量也比較少,得到的數據可以較為準確的反映出設備的可靠性,但測試過程中各種外界因素并不可控,實驗條件在再現性上相對較差。三種不同的測試方式在具體的應用中各有優劣,這就要求電力系統在對電氣自動化控制設備進行可靠性測試的時候,需要依照實際條件選擇合理的測試方式,并對測試的相關問題進行嚴格的規范。

2、電氣自動化控制設備可靠性測試方法的選擇

可靠性測試方法選擇的主要角度有:試驗環境、試驗場地、試驗產品和試驗測試程序這四個方面。

2.1試驗環境。試驗環境的選擇對試驗的效果來說是十分重要的。電控產品不論是在工藝上、規格上還是質量上,差異都很大。因此要根據被試產品的具體情況來選擇與之相應的試驗環境,以保證試驗的客觀性。

2.2試驗場地。場地的選擇也是有規則可循的。如果對產品的可靠性水平有較高的、嚴格的要求或者產品的實際應用環境較為惡劣時,要選擇最嚴格的試驗場地。如果是為了測定一般正常使用條件下的可靠性水平,則應選擇工作環境最為典型的試驗場地。如果是為了提供可靠的可比性資料,則應選擇與實際工作環境相同或近似的試驗條件的場地。

2.3試驗產品。試驗產品的首要要求是要有典型性。電控產品種類繁多、性質多樣。因此在進行試驗時一定要充分了解產品的相關信息,選取具有典型性和代表性的試驗產品進行測試,這樣才能保證試驗的效果,實現試驗目的。

2.4試驗的測試程序。一個統一的、科學合理的試驗程序是必不可少的,而且在實際試驗中,試驗人員要嚴格按程序進行試驗。具體來說,一個統一的測試程序要包含以下重要因素:試驗起始結束時間、時間間隔的確定、數據的采集、各種性能指標的記錄、保障情況的記錄、保障的排除等,并且這些要素都要有嚴格規范,以保證測試的準確性和可信性。

3、結論

隨著電氣自動化控制系統在我國電力系統當中應用的不斷深入與發展,保證電氣自動化控制設備運行的可靠性與穩定性可以說是一項重要的工作。

我們一方面要根據電控產品實際情況來選擇可行的、高效的試驗方法。另一方面,同時也是較為重要的一個方面,即我們要在我國電氣自動化發展進程中,不斷地完善和創新電控設備可靠性測試的方法,更要切實保證電氣自動化控制設備可以安全、穩定的運行,對其可靠性進行系統全面的測試,找到影響其運行可靠性的因素是尤為必要的。但要保證設備可靠性測試的最終結果,必須做好測試方式的選擇,注意測試中的各個環節,將我國的電氣自動化推向一個新的發展進程。

參考文獻:

[1]許衛國,關于電氣自動化設備可靠性測試方法的探討[J].科技傳播,010(07):50-51.

[2]張宏喜.如何對電氣自動化控制設備進行可靠性測試[J].價值工程,2011(06).

[3]吳鈺琳,基于MTBF電氣自動化控制設備可靠性測試的改進[J].硅谷,2009(12):27-28.

亚洲精品一二三区-久久