Нов съм в QUnit и се опитвам да разбера как се възстановяват #qunit-fixtures
. Доколкото разбирам, всичко в този елемент се нулира преди стартирането на нов тест. Виждам обаче (това, което е за мен) нещо странно. В примера по-долу има form
във фиксирането, което се състои само от input
елемент и div
с клас has-error
. Така че, както разбирам, преди всеки тест да бъде изпълнен, те трябва да бъдат възстановени до първоначалното си състояние. Посочих keypress
манипулатор на събития за $('input')
, за да скрия div
в приспособлението.
Имам два теста, които правят абсолютно същото: задействат keypress
на входа и твърдят, че текстът за грешка е скрит.
Това, което виждам е, че само един първия минава. Може ли някой да ми обясни това поведение?
<html>
<head>
<link rel="stylesheet" href="/bgqunit-1.18.0.css">
</head>
<body>
<div id="qunit"></div>
<div id="qunit-fixture">
<form>
<input name="text" />
<div class="has-error">Error text</div>
</form>
</div>
<script src="http://code.jquery.com/jquery.min.js"></script>
<script src="qunit-1.18.0.js"></script>
<script>
QUnit.config.reorder = false;
QUnit.test( "test 1", function ( assert ) {
$('#qunit-fixture').find('input').trigger('keypress');
assert.equal($('#qunit-fixture').find('.has-error').is(':visible'), false);
});
QUnit.test( "test 2", function ( assert ) {
$('#qunit-fixture').find('input').trigger('keypress');
assert.equal($('#qunit-fixture').find('.has-error').is(':visible'), false);
});
$(document).ready(function () {
$('#qunit-fixture').find('input').keypress(function() {
$('#qunit-fixture').find('.has-error').hide();
});
});
</script>
</body>
</html>
Целта на теста е да се тества събитието keypress
. Независимо от това кой код на QUnit действа върху приспособлението, тъй като това е приспособление, ако първият тест се изпълнява $('#qunit-fixture').find('.has-error').hide();
, не трябва ли това да се отмени, преди да се изпълни вторият тест?
$('#qunit-fixture')
. Ако приспособлението не е предназначено за докосване, за какво точно е предназначено? - person VMrx   schedule 27.05.2015