jasminejavascript单元测试附加HTML
我有下面的茉莉花测试jasminejavascript单元测试附加HTML,javascript,jquery,html,jasmine,Javascript,Jquery,Html,Jasmine,我有下面的茉莉花测试 describe('test', function () { beforeEach(function() { loadFixtures('../../Fixtures.html'); }); it('should add some html', function () { $("#some_btn").click(); expect($("#some_div")).toExist()
describe('test', function () {
beforeEach(function() {
loadFixtures('../../Fixtures.html');
});
it('should add some html', function () {
$("#some_btn").click();
expect($("#some_div")).toExist();
});
it('should do something with the div', function () {
//do something
expect($("#some_div")).toHaveClass("some_class");
});
});
触发单击将执行一个函数,该函数将向html页面添加一个div
function addDiv(){
$("#existing_div").append('<div id="some_div"></div>');
}
函数addDiv(){
$(“#现有#div”)。追加(“”);
}
这是html
...
<div id="some_btn" onclick="addDiv();"></div>
...
<div id="existing_div">
<!--where the div is supposed to be inserted-->
</div>
。。。
...
第二次测试失败。
我是茉莉花的新手这会失败吗?我错过什么了吗
谢谢
编辑:我编辑了代码,复制错误,缺少测试的最后一部分。抱歉:(当您每次在运行单个规范之前加载夹具时,第二个规范必须失败,因为它从未触发过单击,并且没有为此规范执行附加div的函数。请尝试放置
加载夹具('../../Fixtures.html'))
在beforeach
块中而不是beforeach
调用该函数的机制是什么?我们需要更多的代码来帮助您,您也不需要像这样构造事件:$('some#btn')。单击()
会帮你的。感谢你,我不知道,我发现的例子是这样的。你是否设置了断点并确保你确实添加了一些div?测试可能失败了b/c你的代码实际上不起作用我如何只加载夹具一次?或者我必须在每个测试中执行所有步骤?我想这将是wrong方式。只需在每个规范中或在before函数中触发click事件。