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

如何单击td中的“注销”

逑和蔼
2023-03-14

Que:如何点击下拉列表中存在的“注销”

 <tr id="dijit_MenuItem_55" class="dijitReset dijitMenuItem" dojoattachevent="onmouseenter:_onHover,onmouseleave:_onUnhover,ondijitclick:_onClick" tabindex="-1" role="menuitem" dojoattachpoint="focusNode" aria-labelledby="dijit_MenuItem_55_text dijit_MenuItem_55_accel" style="-moz-user-select: none;" widgetid="dijit_MenuItem_55">
<tr id="dijit_MenuItem_56" class="dijitReset dijitMenuItem" dojoattachevent="onmouseenter:_onHover,onmouseleave:_onUnhover,ondijitclick:_onClick" tabindex="-1" role="menuitem" dojoattachpoint="focusNode" aria-labelledby="dijit_MenuItem_56_text dijit_MenuItem_56_accel" style="-moz-user-select: none;" widgetid="dijit_MenuItem_56">
<td class="dijitReset dijitMenuItemIconCell" role="presentation">
<td id="dijit_MenuItem_56_text" class="dijitReset dijitMenuItemLabel" dojoattachpoint="containerNode" colspan="2">Logout</td>

我试过了

driver.findElement(By.id("processPortalUserDropdown")).click();
driver.findElement(By.linkText("Logout")).click();
OR
 driver.findElement(By.cssSelector("Logout")).click();

但它不起作用

注:

1、我不能使用id=dijit\u MenuItem\u 56\u文本,因为每次登录或在站点中执行任何功能后,文本都会动态变化。

2.我尝试过

   new     Select(driver.findElement(By.id("processPortalUserDropdown"))).selectByVisibleText("Logout"        );

但它显示错误消息为

 FAILED: testQTO01
   org.openqa.selenium.support.ui.UnexpectedTagNameException: Element should have been      "select" but was "div"
    Build info: version: '2.37.0', revision: 'a7c61cb', time: '2013-10-18 17:15:02'
   System info: host: 'TSSGMSL060', ip: '10.56.40.138', os.name: 'Windows 7', os.arch:       'x86', os.version: '6.1', java.version: '1.7.0_40'
    Driver info: driver.version: unknown
at org.openqa.selenium.support.ui.Select.<init>(Select.java:46)
at Com.Tss.Qto.QTO01.testQTO01(QTO01.java:59)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

谁能给我一个解决方案?。。这将是很大的帮助。。提前感谢。

共有3个答案

李耀
2023-03-14

试试这个。

Actions builder = new Actions(driver);
builder.Click(driver.findElement(By.id("processPortalUserDropdown")))
    .Click(driver.findElement(By.linkText("Logout")))
    .Click()
    .Perform();
卫嘉言
2023-03-14

尝试驱动程序。findElement(按.id(“dijit\u MenuItem\u 56\u text”))。单击();

单于翰飞
2023-03-14

尝试

new Select(driver.findElement(By.id("processPortalUserDropdown"))).selectByVisibleText("Logout")
 类似资料:
  • 问题内容: 因此,我尝试单击YouTube上的一个按钮,但是由于按钮太多,因此无法通过Xpath找到该按钮,因此我尝试将它们保存在IList中,现在我想单击列表中的特定按钮。 问题答案: 根据的文档将返回类型。因此,您可以像这样简化代码:

  • 我正在尝试在AlertDialog中执行CardView的StartActivity,但它不起作用 我在网上找不到任何类似的东西,我也试过用一个按钮,我得到了同样的错误(见文章底部的LogCat) 以下是我的AlertDialog的布局: 这是我的主菜 这是我的日志:

  • 我对selenium的第一个测试是单击网站上的按钮。我需要点击的第一个按钮是“是的,你可以使用cookies”——网站弹出窗口中的按钮。但似乎selenium并没有找到那个按钮,即使我添加了一条等待线。我也尝试了弹出窗口中的其他按钮,但是我的元素找不到任何一个可以点击的按钮。元素在iframe中,所以我想我必须更改为它,但似乎我做错了什么。 这就产生了错误 如果我尝试在更改为iframe后直接单击

  • 问题内容: 我有以下几行: 在我的控制器中,我有: 如何在我的控制器ShowId函数中访问被单击元素的ID(在我的情况下为12345)? 请注意,绑定不在ng-repeat内,因此我可以访问项目ID或类似内容。 问题答案: 我解决了这个问题:

  • 我在Android上有一个,我希望任何嵌入的URL都可以点击。我使用了类,它将它们变成蓝色并加下划线。然而,我不知道如何让它们真正可以点击。 谢谢!

  • 问题内容: 我有点困惑,PHP中有很多函数,有些使用这个,有些使用那个。有些人使用:,,等 哪个是正确的,你们通常使用什么? 这是正确的吗(如果有的话,建议我做一个更好的): 该行可以防止MySQL注入和XSS攻击? 顺便说一句,除了XSS攻击和MySQL注入之外,还有其他需要注意的事情吗? 编辑 结论: 如果我想将字符串插入数据库,则无需使用,只需使用即可。在显示数据时,请使用,这是您的全部意思