Silex/PHPUnit の機能テストについて質問があります。
require_once '/var/www/silex/vendor/autoload.php';
class MyTest extends Silex\WebTestCase{
protected $app;
public function createApplication() {
$this->app = require 'app.php';
return $this->app;
}
public function testInitialPage(){
$client = $this->createClient();
$crawler = $client->request('GET', '/login');
$this->assertTrue($client->getResponse()->isOk());
$this->assertCount(1, $crawler->filter('html:contains("Login")'));
$this->assertCount(1, $crawler->filter('form'));
$this->app['session']->set('userid', X);
$this->app['session']->set('username', 'X');
$this->app['session']->set('isadmin', true);
$crawler = $client->request('GET', '/');
$this->assertTrue($client->getResponse()->isOk());
$this->assertCount(1, $crawler->filter('html:contains("Cred")'));
}
public function testAdd() {
$client = $this->createClient();
$crawler = $client->request('GET', '/');
$this->assertTrue($client->getResponse()->isOk());
$this->assertCount(1, $crawler->filter('html:contains("Cred")'));
}
これは最初の「テスト」である必要がありますが、実行するたびにtestInitialPage()
メソッドが実行され、エラーは発生しません。
しかし、testAdd()
私は失敗します' No route found for "GET /" '
私にとっては、2番目のメソッドには $app (およびルーティング) がもう存在しないようです"testAdd()"
適切な機能テスト システムを設定する方法を教えてくれる人はいますか?