官术网_书友最值得收藏!

2.3 TestStand組件

TestStand如何實現測試管理?這需要了解它的系統組成,TestStand包含許多組件:序列編輯器(Sequence Editor)、用戶界面(User Interface)、TestStand引擎(TestStand Engine)、模塊適配器(Module Adapters)、TestStand部署工具(TestStand Deployment Utility),如圖2-5所示(TestStand部署工具相對獨立,沒有在圖中列舉)。

1.TestStand引擎(TestStand Engine)

圖2-5簡單地展示了TestStand組件之間的相互關系,可以看到,TestStand引擎是TestStand系統的核心部分。TestStand引擎其實是一個基于ActiveX的自動化服務器,通過應用程序接口(API)將其功能開放給客戶端,客戶端通過TestStand API得以創建、編輯、執行或調試序列。在TestStand體系中,序列編輯器、用戶界面、模塊適配器都屬于客戶端??梢园裈estStand引擎比喻成一只看不見的手,因為它本身沒有界面,但它在后臺支撐著一切功能。

圖2-5 TestStand系統組成

2.序列編輯器(Sequence Editor)

序列編輯器(如圖2-6所示)是TestStand中最重要的一個開發工具,TestStand大部分的開發工作都是在序列編輯器中完成的。它提供了一個圖形化的開發環境,測試開發人員可以在序列編輯器中創建、編輯、執行或調試序列。圖形化的開發環境非常方便,舉個例子,在序列編輯器中通過拖曳就可以將一個步驟添加到序列中,但底層其實涉及一系列動作,TestStand需要首先創建一個步驟對象,然后設置對象屬性,最后把這個對象添加到主序列中,這一系列動作是通過TestStand API訪問TestStand引擎來完成的,但對用戶而言,只是做了一個拖曳的動作。大部分時候我們不需要直接訪問TestStand引擎,序列編輯器的圖形化界面簡化了用戶創建復雜應用的過程。其實,TestStand提供了一個分層體系結構:表達層(用戶看到的)和邏輯層(用戶的某個操作所對應的在后臺執行的操作)。序列編輯器和后面介紹的用戶界面都屬于表達層,而TestStand引擎及TestStand API屬于邏輯層。我們只在某些場合通過TestStand API直接訪問TestStand引擎。

3.用戶界面(User Interface)

用戶界面(如圖2-7所示)可以運行和調試由序列編輯器創建的序列,并顯示結果。和序列編輯器一樣,它也是表達層,通過TestStand API訪問TestStand引擎來實現序列的執行、調試等。既然有了序列編輯器圖形化的界面,為什么還要專門的用戶界面呢?當使用序列編輯器創建序列文件之后,不是就可以立刻在序列編輯器中運行和調試了嗎?本質上來說,序列編輯器也是用戶界面,只是它的功能比較強大,幾乎可以在其中完成所有的開發工作。在開發階段,往往就在序列編輯器中運行序列并進行調試,這時它就是一個用戶界面,但正因為它功能強大,如果開發完成后要把它部署到產線使用,對于產線操作人員而言,這個界面可能就太過復雜了,而且開發者也不希望操作人員隨意修改已經編寫好的序列文件,因此有必要提供一個簡化的界面,只要能運行調試序列即可,甚至連調試功能也不需要,而這就是用戶界面。再者,序列編輯器不能修改,而用戶界面是可以自定制的,這就完全可以根據自己的需求來設計,如顯示額外的信息。在TestStand中有提供基于LabVIEW、LabWindows/CVI、C++、C#和VB.NET的用戶界面源代碼范例,這些范例都是可以直接運行的,也可以在范例的基礎上進行修改。關于用戶界面的更多內容,將在高級主題部分進一步講解。

圖2-6 序列編輯器主界面

4.模塊適配器(Module Adapter)

TestStand步驟可以調用并執行不同應用開發環境編寫的代碼模塊,而這正是借助于模塊適配器來實現的,它在TestStand引擎和代碼模塊之間提供了一條通道。有些代碼模塊適配器(如LabVIEW、LabWindows/CVI、.NET),甚至允許在TestStand執行序列的過程中,進入相應代碼模塊的應用開發環境進行調試,這是比較有用的一個功能。

圖2-7 用戶界面示例

主站蜘蛛池模板: 临潭县| 平罗县| 安国市| 贵定县| 陇西县| 河津市| 来安县| 安义县| 永新县| 荣成市| 远安县| 长垣县| 郑州市| 宝应县| 静海县| 九龙城区| 石河子市| 营山县| 大英县| 吉林市| 乡宁县| 尼木县| 长丰县| 石渠县| 东乡族自治县| 平安县| 临颍县| 稷山县| 永兴县| 阳原县| 东兰县| 霸州市| 克拉玛依市| 固镇县| 咸宁市| 台山市| 陇川县| 林芝县| 本溪| 琼中| 军事|