phpunitのテストには新しく、ステータスコードを探す非常に簡単なテストを行った。phpunitのテストに合格、symfony 2でブラウザのページ読み込みに失敗する
私が実行したときにテストに合格:
bin\phpunit -c app src\AppBundle\Tests\Controller\StarLinX\TravelControllerTest.php
PHPUnit 4.6.10 by Sebastian Bergmann and contributors.
Configuration read from C:\PhpstormProjects\dir\app\phpunit.xml.dist
.
Time: 6.03 seconds, Memory: 20.00Mb
OK (1 test, 1 assertion)
しかし、私は、ブラウザでページを読み込む際に、例外はステータスコード500
と小枝ファイルをレンダリングスローされます私は多分、これはと思いましたキャッシュの問題なので、--env = dev、prod、およびtestでキャッシュをクリアしました。
このエラーのトラブルシューティングを行うにはどうすればよいですか?
これは私のテストファイルである:これは、DEV環境で実行した場合にスローされるエラーです
namespace AppBundle\Tests\Controller\StarLinX;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
class TravelControllerTest extends WebTestCase {
public function testGET() {
// Create a new client to browse the application
$client = static::createClient();
// get the page
$crawler = $client->request('GET', '/travel/aaaaa');
$this->assertEquals(200, $client->getResponse()->getStatusCode(), "Unexpected HTTP status code for GET /travel/aaaaa");
}
}
:
An exception has been thrown during the rendering of a template ("Notice: Array to string conversion")
だから、もう少し分析した後、私はエラーがあることを見つけますであり、これは{{ weatherInfo.now }}
である必要があります。開発環境の実行中にエラーがスローされます。プロダクションでは、小枝は単にArray
と表示します。
これは正常な動作ですか?
追加されたテストの唯一の問題は、ページがまだパス。なぜ、枝ではなくprodで配列にエラーがスローされますか? – ScottGutman
@ScottGutman *追加されたテストの唯一の問題は、ページがまだ通り過ぎるということです。エラーがある場合、最後の2つのアサーションは失敗します。 –
@ScottGutmanデバッグモードが有効なので、Twigはエラーを隠します(例外を隠す方が*ページを分割する方がよい)。しかし、ログファイル 'app/logs/prod.log'にエラーが表示されるはずです。 –