如何确保PHPUnit中的数组相等?

时间:2012-10-10 18:57:14

标签: php selenium phpunit

我正在测试网站的下拉菜单,按名称排序。

$nameSort = array();
    $numOfNames = $this->getXpathCount("//td[@class='entry']");
    for($count = 1; $count <= $numOfNames; $count ++) {
        $get = $this->getText("xpath=(//td/a[contains(@href, '')])[$count]");
        array_push($nameSort, $get);
    }
    $test = sort($entrySort);
    $this->assertEquals($entrySort, $test);

但它说“有1次失败:

NameTest::testNameTab true does not match expected type "array".

1 个答案:

答案 0 :(得分:5)

你的问题是sort返回一个布尔值并对数组进行排序。

举个例子:

$arr = array(1,5,3); 
var_dump(sort($arr)); 
var_dump($arr);

这将导致:

bool(true)
array(3) {
  [0]=>
  int(1)
  [1]=>
  int(3)
  [2]=>
  int(5)
}

你可能想要这个(或类似的东西):

sort($nameSort);
$this->assertEquals($entrySort, $nameSort);