gpt4 book ai didi

angularjs - 如何测试必须用 testacular 和 jasmine 呈现的 HTML

转载 作者:行者123 更新时间:2023-12-05 01:10:32 25 4
gpt4 key购买 nike

我想测试一个指令是否将正确的 jquery 函数绑定(bind)到 DOM 并且它们是否有效。

例如,我想测试一个元素在使用 $.slideUp() 向上滑动后是否可见,或者我想在 html 输入上执行单击事件。

看来我需要以某种方式将编译后的指令附加到 DOM 以实现这一点。我看过testing directives video on youtube他说这是可能的,但他没有提到你是如何做到的。

我有点卡住了。

以下是失败测试的链接:http://plnkr.co/edit/PojXf8?p=preview

最佳答案

几件事:

首先,如果你想在 Angular 中使用 jQuery,它需要在 Angular 之前加载,所以将它的 script 标签移到 Angular 之前。

其次,将指令附加到 DOM 是正确的。在 beforeEach调用,您可以使用 jQuery 创建一个主机 div,然后在 afterEach 中删除该 div称呼。

Here that is in a fork of your plunk .

也就是说,您只需要 DOM 中的 div 来检查可见性,我什至不确定在大多数情况下您是否需要这样做。例如,您可以使用 Sinon 监视 slideUp调用以确保它发生并依赖 jQuery 的测试它确实有效。

而且您总是可以通过调用 elm.click() 直接触发点击使用 jQuery。

关于angularjs - 如何测试必须用 testacular 和 jasmine 呈现的 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14885637/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com