如何从PHPUnit中的提供程序传递数组作为参数?

前端之家收集整理的这篇文章主要介绍了如何从PHPUnit中的提供程序传递数组作为参数?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个接收数组作为参数的测试方法,我想从数据提供程序方法提供数据?

怎么能实现呢?

public function dataProvider(){
        return array(array(
                'id'=>1,'description'=>'',));
}

/**
 * @dataProvider dataProvider
 */
public function testAddDocument($data){
// data here shall be an array provided by the data provider
// some test data here
}

会发生什么,它传递’id’键等的值

我想传递整个数组

数据提供程序方法必须为每组参数返回一个包含一个数组的数组,以传递给测试方法.要传递数组,请将其与其他参数一起包含.请注意,在示例代码中,您将需要另一个封闭数组.

这是一个返回两组数据的示例,每组数据都有两个参数(一个数组和一个字符串).

public function dataProvider() {
    return array(                       // data sets
        array(                          // data set 0
            array(                      // first argument
                'id' => 1,'description' => 'this',),'foo',// second argument
        ),array(                          // data set 1
            array(                      // first argument
                'id' => 2,'description' => 'that','bar',);
}

要点:数据提供程序方法必须是非静态的. PHPUnit实例化测试用例以调用每个数据提供者方法.

原文链接:https://www.f2er.com/php/134803.html

猜你在找的PHP相关文章