2012-11-30 35 views
2

下載Scrapy 0.16源代碼後,我試圖在我的Macbook上使用./bin/runtests.sh運行測試。令人驚訝的是,測試失敗了。它給出了這些結果:FAILED(跳過= 46,失敗= 9,成功= 887)。 有沒有人遇到過這個問題?你如何解決它?如何修復scrapy源代碼測試失敗:FifoDiskQueue

[FAIL] 
Traceback (most recent call last): 
    File "/Users/lws/Downloads/scrapy-scrapy-7b5310d/scrapy/tests/test_utils_queue.py", line 128, in test_close_open 
    self.assertEqual(q.pop(), 'c') 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twisted/trial/unittest.py", line 270, in assertEqual 
    % (msg, pformat(first), pformat(second))) 
twisted.trial.unittest.FailTest: not equal: 
a = None 
b = 'c' 

[FAIL] 
Traceback (most recent call last): 
    File "/Users/lws/Downloads/scrapy-scrapy-7b5310d/scrapy/tests/test_utils_queue.py", line 128, in test_close_open 
    self.assertEqual(q.pop(), 'c') 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twisted/trial/unittest.py", line 270, in assertEqual 
    % (msg, pformat(first), pformat(second))) 
twisted.trial.unittest.FailTest: not equal: 
a = 'e' 
b = 'c' 

回答

2

是的,這是一個scrapy該漏洞似乎沒有表現出來在GNU/Linux,只有在Mac OS。這是由於FifoDiskQueue將非緩衝文件讀取與緩衝文件搜索混合在一起。

我寫了一個PR,它解決了這個問題以及其他一些兼容性問題。不知道什麼時候修復會使它成爲新版本。

雖然Scrapy在mac os上沒有任何問題,但是它的工作沒有問題(FifoDiskQueue是默認不使用的備用隊列機制)。

+1

現在將合併請求。 –

相關問題