簡體   English   中英

SoapUI和Groovy:如何像從命令行一樣調用已編譯的jar文件?

[英]SoapUI and Groovy: How to call a compiled jar file as if from the command line?

我正在編寫一個測試,要求我一次執行一個Java文件。 Java文件已被編譯,我無權訪問源代碼或文檔。

我知道是否打開命令提示符並通過鍵入以下內容來執行文件:“ java -jar someFile.jar-someOptions”,然后正確執行了我需要執行的步驟。

我已經嘗試過groovy腳本

def output = "java -jar someFile.jar - someOptions".execute().text
log.info output

但是,這只是給我一個空的日志條目。

我不確定問題是否在於java需要花費一些時間來執行(它涉及服務器調用),因此在嘗試記錄輸出之前,輸出尚未寫入字符串。

我也不確定腳本是否可以看到.jar文件。 我已經將它放在我的\\ bin \\ ext文件夾中。 但是,我還需要此測試與操作系統無關,因此我真的對代碼中的硬代碼路徑猶豫不決。

嘗試這個:

def command = "java -jar someFile.jar - someOptions"
def process = command.execute()
process.waitFor()

def output = process.in.text
log.info ouput

請使用waitFor(),因為您希望該過程完成。

您可以將SoapUI指向保存jar文件的位置,並在測試啟動時對其進行編譯。 然后,這應該讓您從常規步驟調用已編譯的文件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM