2017-02-13 49 views
1

我已經安裝pytest-timeout,我試圖運行測試,看起來像這樣:Pytest掛儘管超時

@pytest.mark.timeout(30) # Time out after 30 seconds 
def test_main(timeline): 
    if config['check_rules'] is True and save_only is False: # If configured to do so: 
     for instance in timeline.instances:     # For each app (in each device) on our timeline... 
      RulesGenerator(instance).gentest_rules() 

據我瞭解,這個測試應該在30秒後超時。我觀察到什麼,然而,就是測試無限期掛起:

============================= test session starts ============================== 
platform linux2 -- Python 2.7.12, pytest-3.0.5, py-1.4.32, pluggy-0.4.0 
rootdir: /home/kurt/dev/clones6/ipercron-utils/tester, inifile: 
plugins: timeout-1.2.0, flask-0.10.0 
collected 1 items 

tester.py 

總之,它似乎像預期的timeout功能不能正常工作。這可能是什麼原因?

回答

0

通過使用-s選項來打印輸出,我相信我看到了什麼問題:測試使用的燈具,timeline,這需要很長時間才能生成。 timeout僅適用於測試本身,而不適用於其固定裝置的生成。