啟動及停止遠端控制程式碼涵蓋面收集器

遠端控制模式執行程式碼涵蓋面(無使用者介面)。 遠端控制模式非常適用以下環境:未從指令行或作為 Script 一部分安裝使用者介面工作台。

關於這項作業

附註:
  • 在 macOS上無法使用遠端控制程式碼涵蓋面。
遠端控制程式碼涵蓋面收集器會以使用者介面使用除錯常駐程式的相同方式來執行常駐程式,以接聽送入的連線。 採用與使用者介面中的程式碼涵蓋面擷取相同的方式,啟動或執行應用程式,但是使用遠端控制程式碼涵蓋面收集器的 IP/Host:port。 如需相關資訊,請參閱 使用收集器以遠端控制模式產生程式碼涵蓋面
附註: 依預設,結果會儲存在 CC 資料夾下使用者起始目錄的根目錄中。 您可以使用 -output 參數來變更預設值。
codecov 指令的語法圖如下所示。 您可以使用單一字母參數或每一個選項的完整字母參數。 所有參數和值都區分大小寫。
讀取語法圖跳過視覺化語法圖codecov -h,help-D,stopdaemon=<port>-P,printparms-d,startdaemon -a,allowoutputlocation=<TRUE|FALSE>-C,startupcommandlist=<path>-c,singleconnect-E,ignoreerrors-e,exportertype=<CCSONARQUBE|SQ|CCPDF|PDF|CCCOBERTURA|COB>-G,exportencoding=<encoding>-f,optionsfile=<path>-g,tag="text"-I,moduleincludelist=<path>-i,moduleinclude=<module_list>-L,localonly-l,cclevel=<LINE|FUNCTION>-o,output=<path>-P,printparms-p,port=<port list>-R,filter=<filters>-r,filterlist=<path>-S,ccsport=<port>-k,ccskeystoreproperties=<path>-s,savesource=<TRUE|FALSE>-T,timeout=<seconds>-t,testid=<testid>-v,view=<DEFAULT|SOURCE_ONLY|LISTING_ONLY>-X,moduleexludelist=<path>-xmoduleexclude=<module_list>-z,zunit=zunitname
選項清單
格式: codecov [options]
-a,allowoutputlocation=<TRUE|FALSE>
指出啟動金鑰中是否容許 -o,output 。 預設值為 FALSE。
-C,startupcommandlist=<path>
指定包含指令的檔案,啟動時該指令將傳送至除錯引擎。
-c,singleconnect
在單一常駐程式連線後結束(必須與 -startDaemon 搭配使用)。
-D,stopdaemon=<port>
停止在埠上接聽的常駐程式。
-d,startdaemon
在常駐程式模式下啟動,並等待連線。 如果未指定 -port ,則會使用下一個可用的埠。 使用的埠號會顯示在主控台中。
-E,ignoreerrors
即使階段作業期間發生錯誤,也會產生結果。 結果可能不完整。
-e,exportertype=<CCSONARQUBE|SQ|CCPDF|PDF|CCCOBERTURA|COB>
指定程式碼涵蓋面資料的匯出格式。 您可以在匯出格式之間使用逗點來指定多個匯出類型。
  • -e,exportertype=CCSONARQUBE-e,exportertype=SQ 會產生副檔名為 .xml 的 SonarQube 格式。 每一個測試結果都包含在唯一子目錄中。
  • -e,exportertype=CCPDF-e,exportertype=PDF 會產生副檔名為 .pdf 的 PDF 格式。 依預設,來源包括在 PDF 報告中。 若要從報告中排除來源,請指定 -s,savesource=false
  • -e,exportertype=CCCOBERTURA-e,exportertype=COB 會產生副檔名為 .xml 的 Cobertura 格式。 每一個測試結果都包含在唯一子目錄中。
-f,optionsfile=<path>
從指定的選項檔案讀取指令引數。
-G,exportencoding=<encoding>
以 SonarQube 格式匯出時,指定來源的編碼。 依預設,會指定 UTF-8 。
只有在指定 -e,exportertype=CCSONARQUBE 時,此參數才有效。
-g,tag="text"
指定與 CC 結果相關聯的標籤。 例如,測試 ID。
-h,help
列印說明畫面。
-I,moduleincludelist=<path>
已淘汰。 請改用 -R,filter=<filters>-r,filterlist=<path>
指定包含模組名稱或正規表示式清單的檔案,這些模組名稱將導致在程式碼涵蓋面中包含相符的模組名稱。 模組 include 參數會置換模組 exclude 參數。
-i,moduleinclude=<module_list>
已淘汰。 請改用 -R,filter=<filters>-r,filterlist=<path>
以逗點區隔的模組名稱或正規表示式清單,將包含程式碼涵蓋面中的模組。 模組 include 參數會置換模組 exclude 參數。
-k,ccskeystoreproperties=<path>
使用金鑰儲存庫內容檔中提供的設定,以安全模式啟動 CCS。 金鑰儲存庫內容檔必須包含有效金鑰儲存庫檔 (ccskeystorefile) 的路徑及密碼 (ccskeystorepassword)。
在 Windows 和 Linux上,您可以在 <install_location>/headless-cc/ccskeystoreinfo.properties 中找到範例檔案
在 z/OS上,您可以在 /usr/lpp/IBM/debug/headless-code-coverage/ccskeystoreinfo.properties 中找到範例檔
-L,localonly
常駐程式將僅接受來自本端主機的連線。
-l,cclevel=<LINE|FUNCTION>
程式碼涵蓋面層次("LINE" 或 "FUNCTION")。
-o,output=<path>
儲存程式碼涵蓋面結果檔案的目錄。 會在每一個階段作業的輸出目錄下建立包含程式名稱及時間戳記的結果。 當您以 SonarQube 或 Cobertura 格式匯出結果時,會建立子目錄。
-P,printparms
列印指定的參數摘要。
-p,port=<port list>
除錯常駐程式使用的埠號、埠清單 (port,port) 或埠範圍 (port-port)。
-R,filter=<filters>
指定以單引號或雙引號括住的過濾器清單。 請使用逗點來區隔過濾器。 過濾器容許字串或正規表示式併入或排除模組、組件及檔案。
如需相關資訊,請參閱 在收集期間過濾程式碼涵蓋面結果
-r,filterlist=<path>
指定包含要併入或排除模組、組件和檔案之過濾器清單的檔案。 每一個過濾器都會出現在個別行上。
如需相關資訊,請參閱 在資料收集期間以遠端控制模式過濾結果
-S,ccsport=<port>
在指定埠上啟動 程式碼涵蓋面服務 (CCS)。 如果埠已在使用中,則程式碼涵蓋面收集器及 CCS 將不會啟動。
當您在 z/OS上執行具有遠端控制程式碼涵蓋面的 CCS 時,會啟用基本鑑別。 需要 z/OS 認證才能存取 CCS REST API ,當您在 程式碼涵蓋面結果 視圖中檢視結果時,會出現鑑別提示。 程式碼涵蓋面結果儲存在使用者子目錄中,使用者只能存取自己的結果。
CCS 使用 Jetty 伺服器 來交付 REST API。 依預設, CCS 會配置每秒 25 個要求的 Jetty 阻斷服務過濾器。 您可以使用下列其中一種方式來置換預設值:
  • 若為 Windows 及 Linux 版本的遠端控制程式碼涵蓋面收集器,請修改 <install_location>/headless-cc/codecov.ini 檔案,並在 -vmargs 區段中定義下列系統內容:
    -DCCSmaxRequestsPerSec=<desired_value>
  • 對於 z/OS 遠端控制程式碼涵蓋面收集器,或者當您搭配使用 CCS 與 遠端除錯服務時,您必須先使用 Java 引數來設定環境變數 IBM_JAVA_OPTIONS ,然後再啟動遠端控制程式碼涵蓋面:
    export IBM_JAVA_OPTIONS="$IBM_JAVA_OPTIONS -DCCSmaxRequestsPerSec=<desired_value>"
  • 對於 遠端除錯服務,請參閱 使用範例工作 EQARMTSU 自訂
CCS 也會以 20 個並行要求來配置 QoS (服務品質) 檔案。 您可以使用下列其中一種方式來置換預設值:
  • 若為 Windows 及 Linux 版本的遠端控制程式碼涵蓋面收集器,請修改 <install_location>/headless-cc/codecov.ini 檔案,並在 -vmargs 區段中定義下列系統內容:
    -DCCSmaxConcurRequests=<desired_value>
  • 對於 z/OS 遠端控制程式碼涵蓋面收集器,您必須先使用 Java 引數設定環境變數 IBM_JAVA_OPTIONS ,然後再啟動遠端控制程式碼涵蓋面:
    export IBM_JAVA_OPTIONS="$IBM_JAVA_OPTIONS -DCCSmaxConcurRequests=<desired_value>"
  • 對於 遠端除錯服務,請參閱 使用範例工作 EQARMTSU 自訂
在 Linux 和 Windows 上, Jetty 會將 Web 檔案展開至 temp 目錄。 在 z/OS上,檔案儲存在使用者起始目錄的隱藏目錄中。 若要置換此情況,您可以在啟動遠端控制程式碼涵蓋面收集器之前設定 CCSworkdir 環境值。
例如,在 Linux 和 z/OS上:
export CCSworkdir=/u/user/jettyfiles
在 Windows 指令 Shell 中:
SET CCSworkdir=C:\jettyfiles
-s,savesource=<TRUE|FALSE>
儲存具有結果的來源。 預設值為 TRUE此參數的值也會控制來源是否與 PDF 匯出器一起出現。 例如,如果使用 -exportertype=CCPDF指定 -savesource=TRUE ,則 PDF 報告中包含來源。
-T,timeout=<seconds>
在逾時之前等待除錯引擎回應的秒數。 預設值是 120 秒。 將終止階段作業,並將儲存已擷取的結果。 指定 0(零)將無限期地等待。
-t,testid=<testid>
結果將與指定的 testid 相關聯。
-v,view=<DEFAULT|SOURCE_ONLY|LISTING_ONLY>
選擇儲存原始檔時要使用的視圖。
  • DEFAULT 使用引擎偏好的視圖。
  • SOURCE_ONLY 只容許程式碼視圖包含在程式碼涵蓋面集合中。
  • LISTING_ONLY 只容許將清單視圖併入程式碼涵蓋面集合中。
附註:
  • DEFAULT 和 SOURCE_ONLY 是唯一支援的視圖選項。 SOURCE_ONLY 支援可與 z/OS Debugger 15.0.3 或更新版本搭配使用,並套用 PTF UI77786 。
  • 若要使用 COBOL 6.2 以及更新版本來收集原始碼層次程式碼涵蓋面,必須使用 SOURCE_ONLY。
-X,moduleexludelist=<path>
已淘汰。 請改用 -R,filter=<filters>-r,filterlist=<path>
指定包含正規表示式清單的檔案,這些正規表示式會導致從程式碼涵蓋面中排除相符的模組名稱。
-x,moduleexclude=<module_list>
已淘汰。 請改用 -R,filter=<filters>-r,filterlist=<path>
以逗點區隔的模組名稱或正規表示式清單,將從程式碼涵蓋面中排除模組。
變更開始-z,zunit=<zunitname>變更結束
變更開始指出程式碼涵蓋面階段作業適用於 ZUnit 測試案例。 將起始設定輸出檔名稱、測試 ID 和模組併入過濾器,以符合 zunitName。 如果也指定測試 ID 或模組併入過濾器,它會置換 zunitname所提供的值。
附註: ZUnit 無法與 IBM® Debug for z/OS®搭配使用。
變更結束