gpt4 book ai didi

javascript - 用 Jasmine 测试大写

转载 作者:行者123 更新时间:2023-12-02 18:46:52 26 4
gpt4 key购买 nike

我正在尝试测试是否使用 Jasmine 调用 String.toUpperCase 方法。然而,每当我尝试它就会返回

toUpperCase() method does not exist

这是我的 Jasmine 测试:

spyOn(String,"toUpperCase")
$(@makeup.el).trigger(@e)
expect(String.toUpperCase).toHaveBeenCalled()

关于如何测试是否被调用有什么想法吗?看来 Stringwindow 对象的私有(private)类,因此我实际上可能无法测试它。请帮忙。

最佳答案

没有String.toUpperCase函数。然而,"pancakes".toUpperCase() 将使用一个 String.prototype.toUpperCase 函数。您应该有更好的运气:

spyOn(String.prototype, 'toUpperCase')
#...
expect(String.prototype.toUpperCase).toHaveBeenCalled()

但是,不能保证 native 函数的行为与 JavaScript 中实现的函数类似,因此如果这不起作用也不要感到惊讶。

检查 toUpperCase 方法是否已在任何地方调用(这就是用 spy 包装 String.prototype.toUpperCase 所做的事情)似乎有点毫无意义,因为使用了字符串到处都是;监视特定的字符串会更有意义,但即便如此,这个特定的测试仍然看起来有点毫无意义。

关于javascript - 用 Jasmine 测试大写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17582997/

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