<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 設計應用 > 自動化測試在動態(tài)文檔發(fā)布系統(tǒng)中的應用

          自動化測試在動態(tài)文檔發(fā)布系統(tǒng)中的應用

          作者: 時間:2011-07-20 來源:網絡 收藏

          3.2 框架方案
          有了輸入和輸出,以及明確的需求,我們給出框架的解決方案:

          本文引用地址:http://www.ex-cimer.com/article/194837.htm

          b.JPG


          (1)把整個過程分為輸入、過程中、輸出、輸出后。
          (2)對于配置,采用XML,并且在XML里提供對輸入、輸出、以及中間的過程的配置。
          (3)對于輸入,我們定義一個接口,對于這個接口的實現(xiàn)將會是各個不同的輸入方式,對于目前來說我們是支持ASL+Textpieces。但是我們以后會支持另外的輸入方式。然后對于所有的輸入接口,我們定義一個中心的中間輸出,我們叫它IDoc。它實際上是輸入和發(fā)布的中心,輸入都要轉成這個我們定義的中間結果,然后輸出都需要從這個中間結果進行加工。
          (4)對于輸出,我們可以把它們同樣配置在XML里面。并且對于最基本的輸出例如PDF,我們可以把它作為默認的一個輸出,而不需要每次進行配置。
          (5)對于中間過程,我們配置了一些攔截器,這些攔截器以IDoc為中心,設置了publish前和publish后的攔截器,也就是說,在這里我們可以對publish前和publish后進行一些配置。比如,在開始前我們可以開始計時,結束后結束計時,這樣我們可以測試一些效率方面的例子。
          (6)對于輸出,我們對于PDF輸出,我們要實現(xiàn)它和自動比較工具的一個集成,也就是生成完PDF后,在配置要求進行比較的情況下,自動調用PDF比較工具對輸出結果和標準進行比較,然后得出結果,并且生成HTML結果表格,然后通過Email給相關人員進行發(fā)送。
          3.3 用例
          當整個系統(tǒng)運行起來后,操作步驟如下:
          首先,簡單來說,我們會提供一些默認的XML配置,包括用例存放路徑、輸入方式、輸出方式、發(fā)比較結果郵件會發(fā)給哪些人等等進行默認配置。因為這些東西會很少改動,當然改動的時候,我們重新配置就行。然后我們把需要運行的輸入,即ASL+Text Pieces放到一個配置的路徑里,然后用名字去區(qū)分不同的用例。然后我們通過XML配置我們的輸入格式、輸出格式,以及需不需要對結果進行比較、需不需要發(fā)郵件等等選項。當這些配置配完以后,我們給它起一個唯一的用例名,然后在程序里將這個用例名作為參數(shù)運行就能使整個過程自動完成。對于程序員,我們每次提交關鍵代碼,都會先運行一下這個框架程序,然后查看自動生成的測試報告。如果發(fā)現(xiàn)問題,及時改正。而對于配置管理員來說,他們這個過程用ant工具配置在打包腳本中,然后我們就可以在每次打包時,自動地運行我們預先設置的用例。并且,生成文件后,程序會自動對生成的PDF文件進行比較,并將結果整理發(fā)出郵件。相關人員會通過Email收到比較結果,在上面可以通過超鏈接很方便地點選那些比較不對的文檔,然后通知程序員進行改正。整個過程由于都是由機器在后臺快速運行,少了人工的干擾,所以既提高了準確率,又提高了效率。

          4 結論
          由于文檔的客戶對于不同系統(tǒng)版本間文檔一致性的高要求,使我們必須要提供一個長久的機制保證這個一致性。而要保證這個系統(tǒng)的一致性,我們提出了一個輕量級自動測試的方案。這里所說的輕量級,只是說該框架下運行方便,不需要受應用服務器和數(shù)據(jù)庫的約束,但是理論它上提供了文檔同樣的功能和行為。實際上在整個過程中,我們盡量調用原先系統(tǒng)的程序,但是在解除對于服務器和數(shù)據(jù)庫的依賴方面,我們通過仔細分析原來的各個模塊的前提下,采用了用本地文件模擬數(shù)據(jù)庫的方法,通過重載方法實現(xiàn)了對于數(shù)據(jù)庫的解耦。該框架提供了強大的可配置功能,通過簡單的XML設置,我們可以對整個過程進行配置,靈活實現(xiàn)不同的功能組合。
          在未來,我們還會不斷完善這個框架,例如會提供更多的輸入選擇,提供可視化的配置,提供盡量準確的診斷功能幫助程序員方便定位錯誤,并且根據(jù)發(fā)布系統(tǒng)的升級而相應提供更多的配置和功能。


          上一頁 1 2 3 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();