我正在测试一个操纵DOM的angularjs指令。
我试图在我的Jasmine规范中获取该元素,以便我可以测试该指令的功能。但是,当我使用document.getElementsByClassName
或TagName
或ID
时,它不会返回任何内容。有没有人有这方面的想法?
html = document.getElementsByClassName('analog');
console.dir(html);
答案 0 :(得分:0)
如果您在无头浏览器/ chrome等中创建测试,则可以附加一个虚拟对象,例如JQuery节点,然后在afterEach中删除该节点。
E.g。
beforeEach(() => {
var mockHtml = $('<div class="form-group" style="position: absolute;left: -10000px;"><input class="testInput" id="some_input"></div>');
$('body').append(mockHtml);
});
afterEach(() => {
$('.form-group').remove();
});