【发布时间】:2017-03-24 12:12:11
【问题描述】:
我想用 Laravel TestCase 测试我的排序是否正常工作。我有简单的测试页面:
<div id="values">
@foreach(['Value1', 'Value2'] as $value)
<div class="test-class">{{$value}}</div>
@endforeach
</div>
现在我想测试第一个 .test-class 元素是否包含 'Value1'。我尝试了不同的方法,但没有成功。这是第一个:
public function testSorting()
{
$this->visit(route('dummy'));
$this->see('Value1');
$this->seeInElement('.test-class:first-of-type', 'Value2');
}
这个导致异常:
Symfony\Component\CssSelector\Exception\ExpressionErrorException: "*:first-of-type" is not implemented.
然后我尝试了
$this->seeInElement('#values:first-child', 'Value2');
我的测试是绿色的。但它应该是红色的,因为第一个孩子是 'Value1'。它完全忽略了 ':first-child' 部分。
然后我尝试了
$this->seeInElement('#values:nth-child(1)', 'Value2');
也变绿了。所以这种方法也行不通。
我错过了什么吗?或者没有办法通过 Laravel 测试来测试页面上元素的顺序?
【问题讨论】:
标签: php css laravel testing selector