我的页面上有很多动画,这确实减慢了在 capybara 中的测试速度,因为 capybara 通常必须等到某个元素被动画化后才开始隐藏。

我为所有基于jQuery的动画找到了以下解决方案:
<%= javascript_tag '$.fx.off = true;' if Rails.env.test? %>
但是,我使用twitter bootstrap,而bootstrap中的大多数动画都是由CSS 3(带有JavaScript后备)制作的。所以我的问题是,有没有办法在测试中转换CSS 3过渡和动画?

最佳答案

您可以尝试创建一些过渡重置并将其应用于特定元素。

.reset-transition {
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    transition: none;
}

您也可以将其应用于ALL并将此CSS放在Bootstrap之后
* {
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    transition: none;
}

您可以使其更具体
div, a, span, footer, header {
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    transition: none;
}

关于css - 关闭 capybara 测试中的动画,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19662287/

10-13 09:22