• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    Perl 多進程技術在自動化測試中的應用

    發布: 2011-1-26 09:21 | 作者: 不詳 | 來源: 領測測試網采編 | 查看: 84次 | 進入軟件測試論壇討論

    領測軟件測試網

      Perl 多進程技術在自動化測試中的應用  軟件測試

      本文內容包括:

      Perl 的多進程

      自動化測試場景介紹

      應用 Perl 多進程技術到自動化測試腳本

      小結

      參考資料

      在 IT 產品系統測試的自動化項目中,經常有并行處理多個子任務的需求,為了提高測試效率,就需要用到多進程或者多線程編程。文章介紹了 Perl 多進程的用法和適用場景,以及 Perl 多進程和多線程的關系。同時結合企業級 IT 產品系統測試的自動化特點,介紹了 Perl 多進程在這方面的應用。

      Perl 的多進程

      Perl 的多進程

      Perl 語言是一種非常強大的腳本語言,其廣泛應用于系統維護,CGI(Common Gateway Interface)編程,數據庫編程和自動化測試中。

      多任務和并發處理一度被看作是判定優異操作系統的一個特性;同樣任何優秀從而流行的編程語言都會有并發的應用,而且都有各自的實現方法。Perl 最開始在并發方面的應用就是多進程。

      Perl 多進程的用戶接口是 fork() 函數以及對系統 fork 函數封裝的一些 module。我們在使用 Perl 語言編程時,如果一個任務的某一個段可以或者需要并發很多執行,那么我們就會使用 Perl 的多進程編程,例如同時向數據庫遞交多個記錄的查詢,同時完成多個系統信息的收集等等。

      Perl 的多進程是這樣實現的:主進程每 fork 一個子進程,會把當前(主進程的)內存空間的所有變量都復制一份傳到新的進程里面,達到數據共享的目的。此外,主進程和子進程可以通過信號、管道等來通信。

      在處理并發的方案中,多進程依靠內存空間獨享提供了優秀的容錯性和健壯性。一個多進程的系統不會由于其中一個進程的狀態不良而崩潰,每個進程都相對獨立地運作,很少會相互影響。

      內存空間獨享也造就了多進程不可避免的劣勢:資源負荷以及通信復雜,對于 Perl 來說,每個子進程都可以看作主進程的拷貝,這多少有些內存浪費,而且主進程的關鍵變量如果是“淺復制”到子進程的話,將會帶來一些意想不到的錯誤。另外,進程的創建和回收會帶來許多額外的負載,因此應當盡量避免頻繁地創建進程。

      多進程之間的通信方式有 socket,管道,信號量等。在 Linux 平臺上,對于進程間大量信息的交互情況,最常用的是文件;這在用戶空間進程和系統內核空間進程之間的通信中的最為常用。

      在談起 Perl 多進程的時候,不可避免的要說說它與 Perl 多線程的關系。

      Perl 的多線程和多線程的關系

      如果我們需要執行一些各異的小任務,他們可能數量較多,但生存周期都比較短,或者他們可能共享大量數據,只有小部分的變量是自身的。這個時候,很自然就想到了多線程。

      從 Perl 5.005 開始,多線程的概念被引入 Perl 語言了;不過僅僅是概念而已。在 Perl 5.005 中,線程模型默認共享所有的數據,而且數據的共享訪問需要明確的同步操作。這個模型被稱為“5005threads”,其實就是多進程,只不過換了個“多線程”的概念。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    71/71234567>

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>