2013-05-30 46 views
2

其实我在这里暴露我的问题:test a repository in symfony 但是,当设置一个测试为我的仓库,我得到以下结果:一套单元测试的symfony

Time: 4 seconds, Memory: 18.25Mb 

OK, but incomplete or skipped tests! 
Tests: 76, Assertions: 183, Skipped: 9. 

是在测试ok或不ok了又是什么说法的意思? 他为什么跳过一些测试?

+0

你执行了什么命令?你执行你的测试,还是symfony的测试? –

+0

symfony的测试 –

回答

2

测试好吗?

是的,测试正常(“确定,但不完整或跳过测试”)。

断言是什么意思?

断言是在测试中完成的期望。例如:

class CalculatorTest extends \PHPUnit_Framework_TestCase 
{ 
    public function testSum() 
    { 
     $calculator = new Calculator(); 

     $this->assertEquals(5, $calculator->sum(2, 3)); 
     $this->assertEquals(19, $calculator->sum(14, 2, 3)); 
    } 
} 

在该代码中,我们有1个试验(testSum)和2个断言(2次assertEquals)。

为什么他跳过一些测试?

Symfony依赖于一些可能未安装的第三方库或PHP扩展。未安装时,您无法对其进行测试。因此将Symfony的测试标记为跳过。例如:

class LocaleTypeTest extends \PHPUnit_Framework_TestCase 
{ 
    public function setUp() 
    { 
     if (!extension_loaded('php_intl')) { 
      $this->markTestSkipped('Failed to run LocaleType tests, as intl is missing.'); 
     } 
    } 
} 
+0

谢谢@wouter J非常清楚 –