我寫作一些功能測試的symfony的1.4.19的網站,使用的Propel ORM的過程中功能測試。我的一些頁面顯示不同,具體取決於用戶是否登錄(已驗證)。Symfony的1.4:經過身份驗證的和未經驗證的用戶
我一直在尋找的online documentation,看看如何實現:運行取決於用戶是否在(認證)否(視情況而定)
- 測試如何登錄或註銷用戶作爲功能測試的一部分。
不過,我似乎無法找到任何說明如何做到這一點。
我寫作一些功能測試的symfony的1.4.19的網站,使用的Propel ORM的過程中功能測試。我的一些頁面顯示不同,具體取決於用戶是否登錄(已驗證)。Symfony的1.4:經過身份驗證的和未經驗證的用戶
我一直在尋找的online documentation,看看如何實現:運行取決於用戶是否在(認證)否(視情況而定)
不過,我似乎無法找到任何說明如何做到這一點。
登陸:
$username = 'root';
$password = 'root';
$browser->
post('/login', array('signin' => array('username' => $username, 'password' => $password)))->
with('request')->begin()->
isParameter('module', 'sfGuardAuth')->
isParameter('action', 'signin')->
end()->
with('response')->begin()->
isStatusCode(302)->
isRedirected()->
end()->
followRedirect()
;
要註銷:
$browser->
get('/logout')->
with('request')->begin()->
isParameter('module', 'sfGuardAuth')->
isParameter('action', 'signout')->
end()->
with('response')->begin()->
isStatusCode(302)->
isRedirected()->
end()->
followRedirect()
;
// this will reset session
$browser->restart();
代碼+1。好的,那很好。現在,所有我需要的是sfUser對象,這樣我可以檢查用戶是否登錄或沒有。謝謝。 –
您將無法訪問sfUser對象的功能測試,因爲你正在瀏覽您的應用程序就像一個瀏覽器。您需要檢查是否有像*註銷的鏈接*或*您在您的模板連接*(或任何你定義的)。 – j0k
謝謝。我想我可以用這個工作。如果我沒有放鬆,我會來這裏尋求幫助:) –
爲什麼你不只是一個用戶連接,讓您的測試,斷開,繼續等..? – j0k
@ j0k:那是什麼我想做的事情,它只是它不是我清楚如何「連接與用戶」的代碼(在功能測試)。你能展示一個片段,展示如何做到這一點? –