0

我遇到了一个面向对象的问题。我有一个简单的单元测试类,我可以用它做一些断言。例如,我的代码可能如下所示:

class TestSomething extends UnitTestCase
{
    public function someTest() { ... }
}

很重要的一点显然是将测试结果记录到某个地方。这可能是一个网页,或者只是一个文件,或者可能是一个数据库。

目前我需要登录到一个文件并在网络浏览器中显示结果。但我想让我的代码尽可能地可扩展。添加另一种类型的“日志记录”机制应该很容易。

所以目前我的UnitTestCase班级看起来像这样:

class UnitTestCase
{
    protected function printHeader ( $testResults )
    {
    }

    protected function printResults ( $testResults )
    {
    }

    protected function printFooter ( $testResults )
    {
    }

    public function assertSomething() {...}
    // ... And alot of other assertions
}

目前我没有记录任何东西,因为我不确定如何继续。在类中实现不同类型的日志记录机制UnitTestCase并保持代码干净和 OO 的好方法是什么?

4

0 回答 0