帮助设计和更重要的是单元测试 类似策略模式

问题描述

| 我正在研究简单的基准“框架”(原因:无聊和实践)。 现在,我正在设法使自己的想法绕开。 第一件事:
class DataManager {

    private $persistanceStrategy;

    public function __construct(IPersistence $persistenceStrategy) {
        $this->persistanceStrategy = $persistenceStrategy;
    }

    public function saveData() {
        $this->persistanceStrategy->saveData($params);
    }

    public function getData() {
        $this->persistanceStrategy->getData($params);
    }
}

interface IPersistence {
    public function saveData(array $params);
    public function getData(array $params);
}

class XMLPersistence implements IPersistence {

    // Params would contain something like path to the
    // xml file,and unique name of some tag
    public function saveData(array $params) {
         // write something to xml file
    }
    public function getData(array $params) {
       // get something from xml file
    }
}

class DBPersistence implements IPersistence {
 // $params would contain unique name of data that is needed
 // and data for db connection
  ...
}

class SessionPersistence implements IPersistence {
  ....
}
问题: 有没有设计这部分代码的更好方法。 有人将如何对DataManager类和“策略”类进行单元测试?     

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)