根据我对这个问题的理解,我认为你不需要在这里有一个 GUI 测试工具。
我对简单测试的想法是:
- 创建一个实例 AttributeColumnGenerator。
- 创建一个表。
- 向表中添加项目
generateCell
使用 columnId 和 itemId调用。
- 对方法返回的组件执行适当的断言。
这是我的想法的一个片段
首先我的ColumnGenerator
人只创建一个带有单元格值的标签。
public class AttributeColumnGenerator implements Table.ColumnGenerator {
public Object generateCell(Table source, Object itemId, Object columnId) {
String textToDisplay = (String)source.getItem(itemId).getItemProperty(columnId).getValue();
return new Label(textToDisplay);
}
}
以及测试方法
@Test
public void attributeColumnGenratortest()
{
AttributeColumnGenerator columnGenerator = new AttributeColumnGenerator();
Table table = new Table();
String columnId = "test";
table.addContainerProperty(columnId, String.class, "");
String itemId = "item1";
Item item = table.addItem(itemId);
item.getItemProperty(columnId).setValue("Value of item1");
Label generateObject = (Label)columnGenerator.generateCell(table, itemId, columnId);
// Assert any properties of the returned Component.
// In this snippet, I only printOut the boolean comparaison.
System.out.println( "Value of item 1".equals(generateObject.getValue()));
}
也许这不是最好的解决方案,但它是有效的。
希望有帮助!
问候。