我有一个简单的VaadinGrid
,如果您单击UI中的行(如here),则会打开一个详细信息。我使用Vaadin 14.0.12。
不幸的是,我没有一个表可以单击并在测试用例中打开详细信息。如果我自己单击行,则会显示详细信息。如果我在测试用例中连续执行一次单击,则不会显示。知道为什么吗?
将详细信息添加到网格:
grid.setItemDetailsRenderer(new ComponentRenderer<Component, Item>(item -> {
return new TestGridDetail(item); // contains some text only
}));
测试平台-测试用例:
我使用当前版本的geckodriver(Firefox)执行测试。网格不为空,包含行。
查找网格(工作正常):
var gridElement = $(TestGridElement.class).waitForFirst();
我尝试通过以下方式打开细节:
gridElement.getRow(0).getDetails().click();
gridElement.getRow(0).click();
细节不会在用户界面中打开。
official documentation提到了一种打开它的方法,但是GridElement
没有提供此方法。
您可以使用 setDetailsVisible()方法,
答案 0 :(得分:2)
解决方案是在click
而不是Cell
上执行Row
。
gridElement.getCell(0, 0).click();
该命令将打开网格第一行的详细信息。