PHPカンファレンス関西2025
LT(5分)
関西勢(在住or出身)

`#[DataProvider]`だけじゃなく`#[TestWith]`も使ってみませんか?

takaram71 荒巻拓哉 takaram71
1

PHPUnitにおける「データプロバイダー」とは、1つのテストメソッドを引数を変えて実行する「パラメタライズドテスト」を実現する仕組みです。
#[DataProvider]アトリビュートを使うと実現できるのですが、類似のアトリビュートに#[TestWith]があるのはご存知ですか?

以前はちょっと使いにくかったのですが、最近では#[TestWith]もとても便利になってきていて、私自身#[DataProvider]よりも#[TestWith]を使う機会が増えてきています。

このLTでは、パラメタライズドテストを実現するアトリビュートの種類と、私なりの使い分け方をお話しします。

想定する観客

  • PHPUnitを使っているがデータプロバイダーを知らない人
  • #[DataProvider]は使ったことがあるが#[TestWith]は知らない人