0
我目前正在爲使用Telerik ASP.Net框架並已運行到阻止程序的Web數據錄入應用程序開發測試框架。如果我在調試模式下遍歷我的代碼,測試將找到我正在查找的文本框並輸入一些測試數據,然後將該數據保存到數據庫。我遇到的問題是,當我讓測試自行運行時,測試失敗,說它無法處理已聲明的列。這裏是我的代碼:Watin:在telerik gridview中遍歷文本框
/*Method to enter test data into cell*/
private TableCell EditFieldCell(string columnHeader)
{
var columnIndex = ColumnIndex(columnHeader);
if (columnIndex == -1)
throw new InvalidOperationException(String.Format("Column {0} not found.", columnHeader));
return NewRecordRow.TableCells[columnIndex];
}
/*Method to return column index of column searching for*/
public int ColumnIndex(string columnHeader)
{
var rgTable = GridTable;
var rgCount = 0;
var rgIndex = -1;
foreach (var rgRow in rgTable.TableRows)
{
foreach (var rgElement in rgRow.Elements)
{
if (rgElement.Text != null)
{
if (rgElement.Text.Equals(columnHeader))
{
rgIndex = rgCount;
break;
}
}
rgCount++;
}
return rgIndex;
}
我的想法是,用的東西,因爲當我讓時返回的rgIndex值運行的程序是-1,告訴我,在代碼嵌套我的for循環中呈現的問題for循環未運行。
是可以獲得表列索引TIA, 比爾·揚曼
感謝 - 這奏效了,雖然我也有稍作修改,並期待在header.Text而不是header.Class因爲編寫此應用程序的供應商在使用控件ID或類ID方面做得並不好。 – 2012-02-10 16:57:48
太棒了,所以你可以把這個問題標記爲回答:) – alonp 2012-02-14 07:56:24