Symfony 1.4:经过身份验证和未经身份验证的用户的功能测试

时间:2012-11-09 14:31:04

标签: php symfony-1.4 functional-testing

我正在使用Propel ORM为symfony 1.4.19网站编写一些功能测试。我的某些页面显示的方式不同,具体取决于用户是否已登录(已验证)。

我一直在关注online documentation,看看如何实施:

  1. 根据用户是否已登录(已验证)(视情况而定)运行的测试
  2. 如何在功能测试中登录或注销用户。
  3. 但是,我似乎无法找到任何显示如何执行此操作的内容。

1 个答案:

答案 0 :(得分:2)

登录:

$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();