微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Jasmine jQuery:使用toBeHidden()和toBeVisible()

我需要帮助使用jQuery-Jasmine的toBeHidden()和toBeVisible()方法.

用户选中复选框时,文本字段应向下滑动 – 并取消选中将其向上滑动.页面加载时隐藏文本字段.

代码在我的应用程序中工作正常,但我对我在测试中得到的结果感到困惑.

前两个正在工作 – 检查字段是否认隐藏并在第一次更改时可见:

expect($('#text-field')).toBeHidden(); // passes

$('#checkBox').prop('checked',true).change();
expect($('#text-field')).toBeVisible(); // passes

但是当取消选中该复选框时,文本字段会在实际版本中向上滑动但在我的测试中失败:

$('#checkBox').prop('checked',false).change();
expect($('#text-field')).toBeHidden(); // fails

我也尝试过:

expect($('#text-field')).not.toBeVisible(); // fails
expect($('#text-field')).toHaveCss({display: "none"}); // fails

有谁知道我做错了什么或知道我还需要做些什么来帮助Jasmine看到文本字段滑了?

解决方法

您可能遇到了与我相同的问题,您的视图在测试中是标准的,因为它没有附加到DOM.在测试中试试这个:
$('body').append(view);

原文地址:https://www.jb51.cc/jquery/177772.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐