之前做的task發現commit的時候出現點問題,失敗了,具體失敗的原因還不知道。而且Cindy姐姐給我們講QA的時候,也跟我講了我做的有點問題,應該說是方向有點不對,郵件裡面東哥說的是要改stack裡面的資訊,但是其實Cindy姐姐要的是改掉Content裡面的東西,只要搜尋不到的船的資訊,這樣子它爬蟲爬不到資料之後,可能好做一些統計工作一些,或許吧。。。具體我的也不懂,QA工具還用的不是很熟練,正確來說應該是不會用。
Cindy的要求:
所以要重新改了
現在的問題就是,我測試不了!
我也不知道這個content裡面的值是哪裡傳進去的,因為content裡面有這些內容:
而在程式碼裡面我也看到相似的:
所以我簡單的以為,這些資訊都是像之前我接觸過得,是拼接而成的。 結果認真看的時候,發現其實這都是selenium裡面的方法,模擬操作的,跟報的這個沒有啥關係,而且我猜測,這個報的content裡面的內容,就是selenium裡面自己寫好的exception,它爬不到資料:就是說網頁上沒有這條船的資訊,就報nosuchexception,後面是各種的配置資訊。
問題找到了,所以現在我要做的就是,把content裡面的內容替換掉,但是我也沒有找到任何傳content的,也沒有註釋,估計有其中一個變數是往上面傳的。
問了東哥
是這個,ok,好辦了。
重新debug,發現真的對unittest裡面的整個邏輯清楚了不少,我這裡簡單記錄下好了:
最上面的紅框,是設定一些你要搜尋的資訊。
下面執行crawler,crawler已經注入了instruction,就是各種配置資訊,還有要用到的crawler,搜不同的網站就用相對應的crawler,然後執行excute方法,
excute方法裡面獲取task就是到執行crawler。
這裡是丟擲stack的時候。
然後在這裡輸出了這兩個list:
結果發現都是空????
如果這裡是空,那麼content也應該是空的吧,而且執行到後面就直接丟擲異常了,needLogPage也沒有放東西進去了,很懵。