用watin管理jquery表

时间:2011-08-24 14:37:41

标签: watin specflow

我正在使用带有Cucumber和Specflow的Watin来使用jquery表自动测试Web应用程序。 我想在表中找到一个特定的数据,但我不知道如何访问该表。当我找到我要查找的数据时,我想返回行的id以将其传递到导航到Delete页面的URL,以便我可以删除数据。 这是我在页面中的代码:

<tr id="S-1-5-21-373314506-2757628719-1954316189-3686" class="ui-widget-content jqgrow ui-row-ltr" role="row" tabindex="-1">
<td class="ui-state-default jqgrid-rownum" aria-describedby="list_rn" title="2" style="text-align:center;" role="gridcell">2</td>
<td aria-describedby="list_Actions" title="Edit | Details | Delete" style="" role="gridcell">
<a href="/Budget.Administrator/User/Edit?id=S-1-5-21-373314506-2757628719-1954316189-3686">Edit</a>

|     Details | Delete Ivana Bagur

所以,在这个例子中,我想通过我的表,当我找到Ivana Bagur时,返回tr id属性,然后我可以传递这个id属性来有效地删除元素。 任何人都可以给我一个想法如何通过表,直到我找到数据,然后捕获tr id?

1 个答案:

答案 0 :(得分:0)

首先,您发布的代码中的内容已关闭,因为它没有完全正确显示;不知何故,你得到的实际链接显示在“详细信息”而不是代码中。

找到TR ID ....一般想法:

  1. 找到包含Ivana Bagur的元素
  2. 找到该元素的祖先是TR。
  3. 如果Ivana只是一个tablcell中的文本,它可能看起来像:

    string IvanaRowID = ((TableRow)(myIE.Table(myID).tablecell(Find.ByText(myRegexContainingIvanaBagur)).Ancestor("tr"))).Id;
    

    我已经做了一段时间了,我的演员阵容可能有点过时/非最佳,但总体思路就在那里。