7

所以我正在用 White 进行一些 C# 自动化/UI 测试,但遇到了一些问题。我在应用程序中有一个 DataGridView,我根据应用程序状态设置了不同的背景单元格颜色。我想在使用白色的测试期间检查这些颜色,但这样做有困难。

这就是我想要做的工作。我可以获得网格视图,但只能作为表格。然后,我后来遇到了问题,因为我最终得到了普通的 TableCells 而不是 DataGridViewCells。

var Table = MainWindow.Window.Get<Table>("DataGridViewName");
var Row = Table.Rows[0];
var Cell = Row.Cells[0];
//invalid
//var Color = Cell.Style.BackColor;

有没有人遇到过这个问题或有什么建议?

4

1 回答 1

1

你确定背景色是通过 UI 自动化暴露的吗?从我完成的低级 UI 自动化编码中,我从未见过这样的属性。我刚刚打开 Inspect(类似于 UISpy)并将其指向 C# WinForms 应用程序中的 DataGridView,并且没有公开此类属性。

因此,由于它似乎没有暴露,因此无法通过自动化来解决它,除非捕获图像并将其与具有某个阈值的某个基线进行比较(听起来像一团糟)。

除非您可以以某种方式将信息嵌入到其他一些自动化属性中(这将需要更改被测应用程序),否则我看不到任何方法可以做到这一点。:(

于 2012-09-15T03:45:30.117 回答