0

我正在使用茉莉花进行测试。

基本上我想确保为给定的 jQuery 选择器执行特定的方法。

例如

$('.hidden-tag').show()

目前我有以下内容:

describe("Test", function () {
  beforeEach(function () {
    spyOn(window, '$').andCallThrough();

    loadFixtures('my_fixture.html');
  });

  it("should call show method on the jQuery selector '.hidden-tag'", function () {
    expect($).toHaveBeenCalledWith('.hidden-tag');
  });

});

第一部分有效。我如何让它检查“显示”方法是否被调用?

4

2 回答 2

0

使用:visible选择器,例如,

alert($('.hidden-tag').is(":visible"));

$('.hidden-tag').is(":visible")if condition这样使用

if($('.hidden-tag').is(":visible"))
{
    expect($).toHaveBeenCalledWith('.hidden-tag');
}
于 2013-10-09T06:18:27.467 回答
-1

尝试在 Firefox 中安装 Fire Bug。在那个打开的控制台中,如果调用“显示”方法有任何错误,你会得到。

您还可以在方法之前和之后插入警报(消息)。如果之前的 alert() 没有被调用,那么问题就在 'show' 之前的某个地方,如果在 alert() 之后没有被调用,那么 'show' 有一些错误。

于 2013-10-09T06:19:28.610 回答