Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHPUnit和一个单身汉_Php_Design Patterns_Singleton_Phpunit_Assertions - Fatal编程技术网

PHPUnit和一个单身汉

PHPUnit和一个单身汉,php,design-patterns,singleton,phpunit,assertions,Php,Design Patterns,Singleton,Phpunit,Assertions,所以我第一次开始在我创建的一个小框架上尝试PHPUnit。在这个框架中,我有一个单例类。尝试运行一个简单的测试只是为了验证我得到了一个正确的实例,但是失败了,老实说,我不确定我做错了什么。这是我的测验 class ConfigTest extends PHPUnit_Framework_Testcase { public function TestGettingInstanceOf() { $conf = Config::getInstance('test.php'

所以我第一次开始在我创建的一个小框架上尝试PHPUnit。在这个框架中,我有一个单例类。尝试运行一个简单的测试只是为了验证我得到了一个正确的实例,但是失败了,老实说,我不确定我做错了什么。这是我的测验

class ConfigTest extends PHPUnit_Framework_Testcase
{
    public function TestGettingInstanceOf()
    {
       $conf = Config::getInstance('test.php');
       $this->assert($conf instanceOf Config);
    }
}

你可以得到这样的概念

 <?php
class MySingleton
{
    private static $_instance;

    private function __construct(){
        // constructor code here it will be called once only
    }

    public static function init(){
        if(self::$_instance == null){
            self::$_instance = new self();
        }
        return self::$_instance;            
    }

    public function someMethod(){
        echo "Doing something!";
    }
}
?> 


关于single-then-read的更多细节,因此PHPUnit中的测试必须以单词
test开头(全部小写),我应该使用
$this->assertInstanceOf('Config',$conf)。因此,我的函数应该写为:

public function testGettingInstanceOf()
{
   $conf = Config::getInstance('test.php');
   $this->assertInstanceOf('Config', $conf);
}

Config::getInstance('test')???我明白了。。。我知道。。。很明显,我还是想测试一下。我知道我正在实例化这个类。问题不是如何或什么是单例,而是如何运行一个简单的测试,以便测试和熟悉PHPUnit,这个测试是针对
getInstance()
函数的。您应该了解访问链接。好吧,不知道你怎么会得到这么糟糕的答案的支持票。。。打动我的心?我简单的例子是php中的singleton不是phpUnit,对不起,兄弟,现在从我回答depandable的问题开始。抱歉