所以我需要使用 Telerik Test Studio 从一堆行中获取所有值。我基本上记录了一个测试以转到 Web 应用程序上的某个页面,并且我有一个名为 Session ID 的行,其下方有一些随机生成的行,我想从这些行中获取值,以用于代码或其他内容。我该怎么做呢?这是我的意思的图片:
问问题
2453 次
2 回答
2
这可以在编码步骤中实现。
假设您在 html 表中有几行,并且您想获取它们的值。您需要收集集合中的所有行,然后获取集合中每个成员的值。
这是一个例子:
HTML:
<table id="table">
<tr>
<td>1</td>
</tr>
<tr>
<td>2</td>
</tr>
<tr>
<td>3</td>
</tr>
<tr>
<td>4</td>
</tr>
<tr>
<td>5</td>
</tr>
<tr>
<td>6</td>
</tr>
</table>
C#中编码步骤的代码:
HtmlTable myTable = ActiveBrowser.Find.ById<HtmlTable>("table"); //Locate the table
IList<HtmlTableRow> myList = myTable.Find.AllByTagName<HtmlTableRow>("tr");//Collect all rows.
foreach (HtmlTableRow rows in myList)
{
Log.WriteLine(rows.InnerText.ToString());
}
这是一个视频演示。
希望我能帮上忙。
于 2013-06-25T15:09:40.450 回答
2
您可以在应用程序的 HTML 结构中找到 ID 或任何其他属性(例如,在 Chrome/IE 中按 F12)。
这是针对Telerik ASP gridview 页面的示例代码。在这里,我检索第一行,然后只检索第一列:
HtmlTable myTable = ActiveBrowser.Find.ById<HtmlTable>("ctl00_ContentPlaceHolder1_RadGrid1_ctl00");
IList<HtmlTableRow> myList = myTable.Find.AllByTagName<HtmlTableRow>("tr");
//First row
Log.WriteLine(myList[11].InnerText.ToString());
//First column
for (int i = 11; i < myList.Count; i++)
{
Log.WriteLine(myList[i].Cells[1].InnerText.ToString());
}
我还录制了另一个演示视频。
于 2013-06-26T14:58:38.340 回答