单击

时间:2016-10-27 14:04:36

标签: javascript cucumber capybara poltergeist twitter-bootstrap-4

我有一个bootstrap网站,由于某种原因,下拉菜单停止工作。

我的下拉列表

<li class="dropdown nav-item">
    <a id="toggle-link">Click to reveal </a>
    <div class="dropdown-menu dropdown-menu-right">
        <a id="inside-dropdown" href="/profile/edit">Mon compte</a>
    </div>
</li>

Capybara

find('a#toggle-link').click

但是在Poltergeist上没有任何事情发生,下拉菜单就不再显示了(在野生动物园中硒很好)。在查看html截图时,似乎javascript无法在下拉列表中添加“打开”类

我不确定之前发生了什么变化,除了宝石更新提升了几个宝石。恶作剧者没有受到影响,Capybara从2.7.1撞到了(但我尝试回滚,没有改变任何东西)

有人遇到过这样的问题吗?

Capybara 2.10.1 恶作剧1.10.0 黄瓜2.4.0 Rails5

编辑:我的宝石升级后,显着的变化

  • Capybara 2.7.1 - &gt; 2.10.1
  • Bootstrap 4.0.0.alpha3.1 - &gt; 4.0.0alpha4
  • 5.0.0.rc1 - &gt; 5.0.0.1

1 个答案:

答案 0 :(得分:0)

我们遇到了同样的问题。在我们的示例中,由于不支持的ES6关键字,Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Deadlock found when trying to get lock; try restarting transaction at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) [rt.jar:1.7.0_85] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcc essorImpl.java:57) [rt.jar:1.7.0_85] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstr uctorAccessorImpl.java:45) [rt.jar:1.7.0_85] at java.lang.reflect.Constructor.newInstance(Constructor.java:526) [rt.jar:1.7.0_85] at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) at com.mysql.jdbc.Util.getInstance(Util.java:386) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1064) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3609) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3541) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2002) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2163) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2618) at com.mysql.jdbc.ConnectionImpl.commit(ConnectionImpl.java:1654) at org.jboss.jca.adapters.jdbc.local.LocalManagedConnection.commit(LocalManagedConnection.java:96) 无法解析js源。但它不会引发异常而只是默默地失败。整个js堆栈没有被加载,包括处理下拉列表点击的代码。