gpt4 book ai didi

javascript - 如何使用 Qunit 测试 jquery-ui datepicker

转载 作者:行者123 更新时间:2023-11-28 05:38:36 24 4
gpt4 key购买 nike

我是 Qunit 的新手,想问一个问题。

我创建了一个 JavaScript 文件来简单地使用如下所示的日期选择器,并使用 Qunit 创建了一个测试代码。我想要做的是显示日历并选择一个日期,并断言该日期已被选择。我的问题是,我能够通过 .trigger("focus") 显示日历,但无法选择任何内容。

有人知道我该怎么做吗?

datepicker-basic.js

$(function () {
$('#jquery-ui-datepicker').datepicker();
});

test-datepicker.html

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>test datepicker.js</title>
<link rel="stylesheet" href="jquery-ui/jquery-ui.css">
<link rel="stylesheet" href="qunit/qunit-2.0.1.css">

<script src="jquery/jquery-1.11.1.min.js"></script>
<script src="jquery-ui/jquery-ui.min.js"></script>
<script src="jquery-ui/i18n/datepicker-ja.js"></script>

<script src="qunit/qunit-2.0.1.js"></script>

<script src="../samples/jquery-ui/js/datepicker-basic.js"></script>
<script src="jquery.simulate/jquery.simulate.js"></script>
<script src="test-datepicker.js"></script>
</head>
<body>
<div id="qunit"></div>
<div id="qunit-fixture"></div>

<input type="text" id="jquery-ui-datepicker">
</body>
</html>

test-datepicker.js

QUnit.test( "basic", function( assert ) {
// initiate input value
$("#jquery-ui-datepicker").val("");

// focus on input-textbox and select date on calendar
$("#jquery-ui-datepicker").trigger("focus").
simulate( "keydown", { keyCode: $.ui.keyCode.ENTER } );

// get selected date from input-textbox
var actual = document.getElementById("jquery-ui-datepicker").value;
// create expected value
var today = new Date();
var expected = formatDate(today);

// assert
assert.ok(actual === expected, "selected value from calendar correctly");
});

最佳答案

哦,我想我找到了答案。我必须添加一个触发器。(“focus”)。这是我所做的更改,并且有效。

之前:

  // focus on input-textbox and select date on calendar
$("#jquery-ui-datepicker").trigger("focus").
simulate( "keydown", { keyCode: $.ui.keyCode.ENTER } );

之后:

  // focus on input-textbox
$("#jquery-ui-datepicker").trigger("focus");
// select date on calendar
$("#jquery-ui-datepicker").trigger("focus").
simulate( "keydown", { keyCode: $.ui.keyCode.ENTER } );

关于javascript - 如何使用 Qunit 测试 jquery-ui datepicker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39137247/

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