0

所以我需要使用 Telerik Test Studio 从一堆行中获取所有值。我基本上记录了一个测试以转到 Web 应用程序上的某个页面,并且我有一个名为 Session ID 的行,其下方有一些随机生成的行,我想从这些行中获取值,以用于代码或其他内容。我该怎么做呢?这是我的意思的图片:

http://imgur.com/ol4XRuH

4

2 回答 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 回答