简单的php UnitTtests但有点卡住了

时间:2014-01-15 16:50:23

标签: php unit-testing phpunit

我刚开始为我的功能做一些单元测试,但我真的找不到如何正确地完成这个功能。我认为这很容易,但我有些遗漏。

    /**
 * Tests model->function()
 */
public function testFunction() {
    // TODO Auto-generated model->testFunction()
    $this->markTestIncomplete ( "function test not implemented" );
    $this->model->testFunction('', '5');
    $this->model->testFunction('test', '');
    $this->model->testFunction('test', 'a');
    $this->model->testFunction('1', '5');

}

这就是我所拥有的,phpUnit只是忽略那些测试。 我想要的是测试我的功能(需要2个参数,两个整数)并检查:

  • 两个参数都不为空吗?
  • 两个参数都是整数类型吗?

有人可以帮我这个吗?

非常感谢!

1 个答案:

答案 0 :(得分:1)

第一个陈述

$this->markTestIncomplete ()

将导致PHPUnit传递此测试文件并在输出中用I标记它以便未完成(已执行)。

其次,您的测试格式不正确。您需要创建对象,然后对其进行测试。

public function setUp()
{
    $this->model = new model();
}

public function testFunction()
{
    $this->assertEquals('test', $this->model->Function(5));  // Test what the function should return, using parameters replacing the 5
}

函数应该根据我在您尝试中看到的内容接受参数。然后这个函数将返回一些你可以评估的东西。

或者,您可以使用dataProvider为测试提供多个值并查看输出。查看PHPUnit手册以获取更多信息。