Phpunit: expectExceptionMessageRegExp()はPHPUnit 9で削除されましたが、PHPUnit8で非推奨の警告が表示されることはありません。

作成日 2020年03月06日  ·  3コメント  ·  ソース: sebastianbergmann/phpunit

| Q | A
| -------------------- | ---------------
| PHPUnitバージョン| 9
| PHPバージョン| 7.3
| インストール方法| 作曲

概要

expectExceptionMessageMatchesを導入するコミットは、 expectExceptionMessageRegExpが9で警告をトリガーし、10で削除されることを示しています。
しかし、9.0はメソッドに警告を追加するのではなく、メソッドを完全に削除しました。 これは、メソッドを使用してテストを実行するときに、非推奨の警告を報告せずにメソッドが削除されたことを意味します。
また、このメソッドが非推奨であることを示す変更ログはありません(PHPUnit 8の変更ログはexpectExceptionMessageRegExp非推奨については説明しておらず、PHPUnit 9の変更ログは削除されたと述べています)。

featurassertion typbug

最も参考になるコメント

さて、最初のコミットは、9で非推奨の警告を追加し(リンクされたコミットを参照)、10で削除することを目的としていました。そのため、8.4と8.5では警告がありません。
問題は、最初の計画に従わずに、8.xで非推奨の警告を追加せずに削除が行われたことです。つまり、警告はまったくありません。

警告の価値は、削除されたメソッドによる致命的なエラーを修正するのではなく、警告が表示されたときに(そして一度に)非推奨に取り組むことができるということです。もう致命的なエラーが発生します(または、IDEでexpectExceptionMessageRegExpを検索することはできますが、アップグレードを支援するのはPHPUnitではなく、非推奨の警告をまったく使用しないことを正当化する可能性があります...)。
可能であれば、8.5に警告を追加するのは理にかなっていると思います。

全てのコメント3件

expectExceptionMessageMatchesは8.4でのみ追加されたため、PHPUnit8の発表ではそれについてまったく説明されていません。

expectExceptionMessageRegExp()はPHPUnit8.4で非推奨になりました。 メソッドが煩わしい方法で使用されたときにこの非推奨が報告されないという事実は同意しますが、PHPUnit 8.5でこの動作を追加することには本当に価値がありますか?

さて、最初のコミットは、9で非推奨の警告を追加し(リンクされたコミットを参照)、10で削除することを目的としていました。そのため、8.4と8.5では警告がありません。
問題は、最初の計画に従わずに、8.xで非推奨の警告を追加せずに削除が行われたことです。つまり、警告はまったくありません。

警告の価値は、削除されたメソッドによる致命的なエラーを修正するのではなく、警告が表示されたときに(そして一度に)非推奨に取り組むことができるということです。もう致命的なエラーが発生します(または、IDEでexpectExceptionMessageRegExpを検索することはできますが、アップグレードを支援するのはPHPUnitではなく、非推奨の警告をまったく使用しないことを正当化する可能性があります...)。
可能であれば、8.5に警告を追加するのは理にかなっていると思います。

このページは役に立ちましたか?
0 / 5 - 0 評価