/**
* A Test can be run and collect its results.
*/
interface Test extends Countable
{
/**
* Runs a test and collects its result in a TestResult instance.
*/
public function run(TestResult $result = null): TestResult;
}
Test interfaceを実装している、また Countable interface も実装している
このrun() に対しては、TestRunnerのみが依存している
TestSuite and TestCase
Command pattern
Test interfaceを実装している、また Countable interface も実装している このrun() に対しては、TestRunnerのみが依存している