當網站採用 OpenID 登入時,在測試碼上遇到的問題:
因為 OpenID 認證部分是跟自己網站沒有關係的,在測試時無需“真實”使用 OpenID 來認證。
所以我們便假造之。

作法如下:

修改 features/support/env.rb



上述的程式碼意義是:當你要執行 open_id_authentication 這個 method 之前,就直接回傳假造的 Result 回去了。
只是測試而已,犯不著真的跑去 OpenID Provider 那邊去擾民。

除了狸貓換太子外,這段程式碼還有另一層意義:

在撰寫測試碼時要避免畫錯重點選錯目標
(像我在找到這解答前差點要寫測試碼來測試 open_id_authentication 這個 plugin 了),
我要測試的內容是“自身網站的登入機制“,
像 OpenID 的部分因為採用第三方 plugin,那便不該是我測試的項目
(plugin 本身自己就該有自身的測試碼)
認準目標是撰寫測試碼最重要之處。

相關連結:



創作者介紹
創作者 沒力小僧 的頭像
沒力小僧

Manic's Talk

沒力小僧 發表在 痞客邦 留言(0) 人氣()