1. ホーム
  2. xml

[解決済み] 特定のphpunit xmlテストスイートを実行するには?

2023-03-07 08:57:50

質問

実行する特定のテストスイートを選択するにはどうすればよいですか。

$ phpunit --configuration config.xml

config.xmlを使用します。

<testsuites>
    <testsuite name="Library">
        <directory>library</directory>
    </testsuite>
    <testsuite name="XXX_Form">
        <file>library/XXX/FormTest.php</file>
        <directory>library/XXX/Form</directory>
    </testsuite>
</testsuites>

どのように解決するのですか?

PHPUnit 3.7.13 でのコードは次のとおりです。

$ phpunit --configuration config.xml --testsuite Library
$ phpunit --configuration config.xml --testsuite XXX_Form

テストスイートのグループを実行したい場合は、次のようにします。

<testsuites>
  <testsuite name="Library">
    <directory>library</directory>
  </testsuite>
  <testsuite name="XXX_Form">
    <file>library/XXX/FormTest.php</file>
    <directory>library/XXX/Form</directory>
  </testsuite>
  <testsuite name="Both">
    <directory>library</directory>
    <file>library/XXX/FormTest.php</file>
    <directory>library/XXX/Form</directory>
  </testsuite>
</testsuites>

次に

$ phpunit --configuration config.xml --testsuite Both

残念ながら、PHPUnit は現在のところこのようなネストしたテストスイートをサポートしていません。

<testsuites>
    <testsuite name="Both">
      <testsuite name="Library">
        <directory>library</directory>
      </testsuite>
      <testsuite name="XXX_Form">
        <file>library/XXX/FormTest.php</file>
        <directory>library/XXX/Form</directory>
      </testsuite>
  </testsuite>
</testsuites>

つまり、この方法でテストスイートのグループを実行しようとすると、xmlの設定を重複させなければならないのです!