首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

STAF 進階實戰:STAX 服務多機器配置與執行環境佈署

     編輯:Java 相關知識

承接上篇單機安裝,本文說明如何配置 STAF 多機器執行環境,使 STAX 工作流能跨機器分發執行。核心在於各機器 STAF.cfg 的信任與介面配置,以及 STAX 服務的統一註冊。

機器角色規劃

  • Controller (控制端):提交 STAX 作業、運行 STAXMon 監控,IP 如 192.168.1.100。
  • Agent (執行端):實際執行測試腳本、部署應用,可有多台,IP 如 192.168.1.101, 192.168.1.102。

關鍵配置:STAF.cfg 信任與介面設定

所有機器均需修改 C:\STAF\bin\STAF.cfg:

# 1. 設定機器別名 (Controller 上設定 Agents,Agents 上設定 Controller)
# Controller 機器:
TRUST LEVEL 5 MACHINE 192.168.1.101
TRUST LEVEL 5 MACHINE 192.168.1.102

# Agent 機器:
TRUST LEVEL 5 MACHINE 192.168.1.100

# 2. 設定網路介面 (雙網卡機器必須指定)
INTERFACE 192.168.1.100  # Controller
INTERFACE 192.168.1.101  # Agent 1

# 3. 統一註冊 STAX 服務 (同單機配置)
SERVICE STAX LIBRARY JSTAF EXECUTE {STAF/Config/STAFRoot}/services/stax/STAX.jar \
OPTION J2=-Xmx384m
SERVICE EVENT LIBRARY JSTAF EXECUTE {STAF/Config/STAFRoot}/services/stax/STAFEvent.jar
SET MAXQUEUESIZE 10000

驗證跨機器連通性

  1. 所有機器啟動 STAF 服務。
  2. 於 Controller 執行:staf 192.168.1.101 ping ping,回應 PONG 即連通正常。
  3. 查詢遠端服務:staf 192.168.1.101 service list,確認列出 STAX、EVENT 服務。

STAX 作業跨機器執行範例

提交 STAX XML 時,使用 machine 屬性指派執行目標:

<stax>
  <script>
    <sequence>
      <process>
        <location>'192.168.1.101'</location>
        <command>'cmd /c run_test.bat'</command>
      </process>
    </sequence>
  </script>
</stax>

於 Controller 執行:staf local stax execute file /path/to/job.xml,作業將自動分發至 Agent 執行。

常見坑點與對策

現象原因解決
Trust 錯誤 (RC 21)目標機器未信任來源 IP雙向配置 TRUST LEVEL 5 MACHINE <IP>
服務未找到遠端 STAF.cfg 未註冊 STAX 或路徑錯誤統一路徑、重啟 STAF 服務
STAXMon 顯示離線EVENT 服務未啟動或防火牆阻擋開放 6500/6550 埠、檢查 EVENT 服務註冊

結語

多機器 STAF 環境的核心在於「信任」與「介面」的正確配置。建議採用腳本化方式批次部署 STAF.cfg,確保叢集一致性。掌握此架構,即可構建可擴展的分散式自動化測試農場。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved