[英]How to check a geckodriver is running on a remote machine?
我正在使用Selenium / Maven / testng編寫自動測試。
測試是在虛擬機Windows Server 2016 Standard上執行的。
我想檢查任務列表是否正在運行geckodriver。 我做:
String line;
String pidInfo ="";
Process p =Runtime.getRuntime().exec(System.getenv("windir") +"\\system32\\"+"tasklist.exe");
BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
while ((line = input.readLine()) != null) {
pidInfo+=line;
}
input.close();
if(pidInfo.contains("geckodriver.exe"))
{
// do what you want
}
運行測試后,代碼在本地計算機上執行測試。
如何在虛擬機上執行這種檢查
您的問題尚未完全定義。 虛擬機具有操作系統。 這在您的查詢中丟失。
但是,為了給您一個可能合適的答案,通常VM是基於Linux的。
您可以在Windows的命令行上手動執行以獲取正確的路徑
where tasklist
這將重新引導您正確的命令路徑。 如果缺少此命令,請搜索該命令並檢查PATH變量中為什么缺少該命令(不是標准的Windows安裝)
就我而言
C:\\Windows\\System32\\tasklist.exe
您在Linux上執行
ps aux | grep geckodriver
在MAC上,您也可以嘗試
ps aux | grep geckodriver
但這也許更好
ps -jef | grep geckodriver
在Linux和MAC上獲取ps命令的正確完整路徑
which ps
希望能幫助到你
其他要點:
您不應手動使用“ \\”路徑分隔符。 我總是會用
File.separator
,它將為您提供正確的操作系統路徑字符
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.