当前位置: 首页 > 知识库问答 >
问题:

Selenium checkbox数据驱动-checkbox只有目标而没有值

仲孙鸿飞
2023-03-14
<tr>
<td>click</td>
<td>id=_ctl0_MainContentPlaceHolder_UseCaseBesturing__ctl1_dgOndersteundeChannels__ctl2_chkbxChannel</td>
<td></td>

为了参数化此操作并指向我的测试数据(XML)文件,我需要一个可以设置为变量的值。但是在这个操作中没有值,只有一个目标,它是ID。

有什么想法如何参数化这个动作,或者如何使用一个值而不是只使用目标(ID)来勾选复选框吗?

附注。通过在Selenium中的value字段中放置“${Parametername}”来执行操作,文本字段可以很好地工作。然后,Parametername将是测试数据文件中的列名。

复选框的Html代码:

<table class="detailgrid" cellspacing="0" border="0" id="_ctl0_MainContentPlaceHolder_UseCaseBesturing__ctl1_dgOndersteundeChannels" style="border-style:None;border-collapse:collapse;">
    <tbody><tr>
        <td style="width:20px;">
                            <span disabled="disabled"><input id="_ctl0_MainContentPlaceHolder_UseCaseBesturing__ctl1_dgOndersteundeChannels__ctl2_chkbxChannel" type="checkbox" name="_ctl0:MainContentPlaceHolder:UseCaseBesturing:_ctl1:dgOndersteundeChannels:_ctl2:chkbxChannel" checked="checked" disabled="disabled"></span>
                        </td><td>
                            <span id="_ctl0_MainContentPlaceHolder_UseCaseBesturing__ctl1_dgOndersteundeChannels__ctl2_lblChannelNaam">POS</span>
                        </td>
    </tr><tr>
        <td style="width:20px;">
                            <input id="_ctl0_MainContentPlaceHolder_UseCaseBesturing__ctl1_dgOndersteundeChannels__ctl3_chkbxChannel" type="checkbox" name="_ctl0:MainContentPlaceHolder:UseCaseBesturing:_ctl1:dgOndersteundeChannels:_ctl3:chkbxChannel">
                        </td><td>
                            <span id="_ctl0_MainContentPlaceHolder_UseCaseBesturing__ctl1_dgOndersteundeChannels__ctl3_lblChannelNaam">eCommerce</span>
                        </td>
    </tr><tr>
        <td>
                            <br>
                            <span type="checkbox"><input id="_ctl0_MainContentPlaceHolder_UseCaseBesturing__ctl1_dgOndersteundeChannels__ctl4_chkalles1" type="checkbox" name="_ctl0:MainContentPlaceHolder:UseCaseBesturing:_ctl1:dgOndersteundeChannels:_ctl4:chkalles1" onclick="CheckAll('chkbxChannel', this.checked);"></span>
                        </td><td>
                            <br>
                            Alles Aan
                        </td>
    </tr>
</tbody></table>

共有1个答案

汪跃
2023-03-14

仍然使用单击,但通过使用XPath改变查找目标的方式。

它看起来像这样:

目标:

xpath=//td/span[text()='POS']
 类似资料:
  • 我已经创建了一个运行在Tomcat 7上的基本的Spring 3.1-Hibernate 4-Mysql 5.5 web应用程序。我通过spring C3PO共享连接。 更新:我也在发布我的代码。 我的Spring应用程序上下文: 如您所见,我为池使用了C3PO数据源,由spring容器管理。 我的属性文件(从spring容器引用): 以下是我的POM依赖项: 我的web.xml是一个标准的Spr

  • 我已经看到,这在其他类型的对话框窗口中是可能的,如“ShowConfirmDialog”,其中可以指定按钮的数量和它们的名称;但是在使用“ShowInputDialog”时是否可以实现相同的功能?我似乎在API中找不到这种类型的东西。也许我只是错过了,但任何帮助都很感激。

  • 我们想为房间数据库构建一个过滤器,过滤器选项由用户选择。 i、 e.我们有一个带有字段(id、名称、日期、类型)的实体。用户可以按日期和/或名称过滤列表,其中包含文本和/或类型等于某个值 有办法在房间里做吗?

  • 问题内容: 关于这个错误,有很多类似的问题,但是似乎没有一个问题可以解决我的问题。我在PostgreSql中创建了以下存储过程: 我试图用以下命令从pgAdmin III调用它: 但我收到以下错误消息: 我应该如何调用我的函数? 问题答案: 跟随a_horse_with_no_name的评论,我对我的函数进行了如下修改: 而且有效!

  • 几天前,我将以前从Fabric获得的崩溃数据迁移到了Firebase。Firebase现在显示了Fabric中与crashlytics相关的数据,但是,与分析相关的数据(最新版本、保留等)却找不到。 Fabric显示数据已在两个操作系统(Android和iOS)上成功迁移,但只有我们的Android操作系统显示出这个问题(我可以在Firebase中找到我们的iOS操作系统的分析数据) 此外,我发现

  • 2006年,我为Oracle连接编写了自己的JDBC连接池。我将集合存储在一个向量中,每天晚上我都实例化一个新的向量对象来初始化连接池: 连接=新向量(池大小); 因此,垃圾收集器删除了所有现有连接,Oracle删除了这些连接。 老实说,这是一个非常糟糕的解决方案,但它可以正常工作12年! 今年,我们将Oracle版本更新为12.2.0.1.0,我在我的高级程序中更新了Oracle JDBC驱动程