PHPUnitを使用してsymfony2アプリケーションをテストしようとしています。 PHPUnitがすべてのテストの終わり近くでテストスイートをランダムに実行しなくなるか、テストスイートを終了してコードを書き直した後にテストを再開するという奇妙な振る舞いをしていますカバレッジ。それ以外の時間は正常に実行されます。ここphpunitがランダムにテストを再開する
は、(テストが終わっ再起動して上にある)何が起こっている目に見えるようにするいくつかの出力である:ここ
PHPUnit 3.6.10 by Sebastian Bergmann.
Configuration read from C:\workspace\cllctr\app\phpunit.xml
................................................................. 65/83 (78%)
...........PHPUnit 3.6.10 by Sebastian Bergmann.
Configuration read from C:\workspace\cllctr\app\phpunit.xml
................................................................. 65/83 (78%)
...PHPUnit 3.6.10 by Sebastian Bergmann.
Configuration read from C:\workspace\cllctr\app\phpunit.xml
................................................................. 65/83 (78%)
............PHPUnit 3.6.10 by Sebastian Bergmann.
Configuration read from C:\workspace\cllctr\app\phpunit.xml
................................................................. 65/83 (78%)
............PHPUnit 3.6.10 by Sebastian Bergmann.
Configuration read from C:\workspace\cllctr\app\phpunit.xml
................................................................. 65/83 (78%)
..................
Time: 01:03, Memory: 43.00Mb
OK (83 tests, 145 assertions)
Writing code coverage data to XML file, this may take a moment.
Generating code coverage report, this may take a moment.
は、すべてのテストを実行した後の再起動テストスイートの例である:
PHPUnit 3.6.10 by Sebastian Bergmann.
Configuration read from C:\workspace\cllctr\app\phpunit.xml
................................................................. 65/83 (78%)
..................
Time: 01:29, Memory: 53.25Mb
OK (83 tests, 145 assertions)
Writing code coverage data to XML file, this may take a moment.
Generating code coverage report, this may take a moment.
PHPUnit 3.6.10 by Sebastian Bergmann.
Configuration read from C:\workspace\cllctr\app\phpunit.xml
................................................................. 65/83 (78%)
............PHPUnit 3.6.10 by Sebastian Bergmann.
私の他のプロジェクトは何の問題もなく実行されているので、コード内に問題があるはずです。しかし、私はこの動作を引き起こす可能性があるものを理解できません!ログに予期しない/奇妙なものは何も表示されません。
EDIT
昨日、私は奇妙な何かに気づいた:私はいくつかの理由は無関係な理由のMySQLへのMongoDBから切り替えることにしました。移行が完了した後、すべてのテストは問題なく実行されます。私は何度も試してみましたが、私はもうそれを再現できません。これは私の機能テストでのみ発生したので、問題はWebTestCaseクラスであり、データベースをクリアして再構築するコマンドを実行していると思う傾向があります。多分MongoDBを使っている人がこの動作を再現できるでしょうか?
いつも同じ場所、65/83で起こっているようです。どのテストに到達しているのか調べることはできますか?実行時に '--verbose'オプションを使ってみてください。 –
65/83は、行1で65個のテストが実行されたことを意味します(各ドットは1つのテストです)。 2行目で実行されたテストの数は同じではないことがわかります。そのため、1つのテストが失敗しているとは限りません。テストがうまくいくことがあり、時にはループすることもあるので、私はそれが1つのテストのためだとは思わない。しかし、私はさらに調査します! – Sgoettschkes
私の悪い!私はその知識を私の脳のどこかに持っていました。ここでは質問があります - 孤立したPHPプロセスで各テストを実行していますか?それはこの異常な活動を引き起こす可能性があります。私たちはいつもあなたと同じバージョンのPHPUnitを使用していて、あなたが見ているものと同じようなものを見たことはありません! –