我在Clojure / Cider中发现了很奇怪的行为。当我尝试以两种方式执行相同的表达式(运行测试并在REPL中运行)时,我得到了不同的结果。
这是一个表达式:
(with-chrome {} driver
(start)
(doto driver
(go "http://localhost:3000")
(wait-visible {:id :domain})
(fill {:id :domain} "foo")
(click {:id :login_button})
(wait 5))
(stop))
第一种方式是我用deftest
包裹它。第二个我复制并粘贴在REPL中。不同之处在于,当我运行测试时,click
命令根本不起作用。虽然REPL场景也有效。
有人可以给我一个提示吗? PS:我在上面的示例中使用etaoin
库。
答案 0 :(得分:0)
嗯,原因是我将整个代码包装到由于TRUNCATE操作而锁定表的DB事务中。这就是为什么点击一个按钮会发送一个永远挂起的ajax请求。