簡體   English   中英

使用xvfb-run運行py.test

[英]Running py.test with xvfb-run

我試圖在Jenkins中運行使用PyQt4的Python包,測試創建窗口。 由於我在Jenkins中運行測試,我需要重定向圖形輸出,所以我使用的是xvfb-run。 大多數情況下,這是有效的,但只有一小部分時間,測試將隨機失敗:

/usr/bin/xvfb-run: line 171: kill: (27375) - No such process

如果我重新運行測試,它在大多數時間都能正常工作(所以這只是一次性問題)。

有沒有人遇到過這個問題? 您對改進測試穩定性的變通方法有什么想法嗎?

它通過找到Xvfb進程並殺死它。

ps auwx | grep "Xvfb" | grep -v grep

如果您的xvfb-run副本與我的相同 ,我可以確認我也看過這個。

就我而言,目標進程導致Xvfb崩潰。 這意味着當拆除不再運行Xvfb時,包裝器腳本本身在第171行失敗。 為了解決這個問題,我在一個set +e / set -e塊中包含了kill $XVFBPID 如果指定--error-file=以便xvfb-run在目標進程運行時保存Xvfb的異步標准錯誤輸出,這也會--error-file=幫助,因此您可以修復基礎原因。

解決方法:

# Kill Xvfb now that the command has exited.
# Ignore failure of kill since we want to be forgiving of Xvfb itself crashing
set +e
kill $XVFBPID
set -e

暫無
暫無

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

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