gpt4 book ai didi

javascript - 未找到 QUnit

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

我在 javascript 中有以下代码,调用 persona.js:

var PrototipoPersona = {
nombre : '' ,
primerApellido : '',
segundoApellido : ''
}
getNombre = function(){
return this.nombre;
}
getPrimerApellido = function(){
return this.primerApellido;
}
getSegundoApellido = function(){
return this.segundoApellido;
}

setNombre = function(nombre){
this.nombre=nombre;
}
setPrimerApellido = function(primerApellido){
this.primerApellido = primerApellido;
}
setSegundoApellido = function(segundoApellido)
{
this.segundoApellido = segundoApellido;
}
var Persona = function(datosPersona) {
var miPersona = Object.create(PrototipoPersona);
miPersona = $.extend(miPersona,datosPersona);
return miPersona;
}

Controller 调用controlador.js:

$(document).on('ready',function(){

var datosPersona = {
nombre : 'Juan' ,
primerApellido : 'Garcia',
segundoApellido : 'Lopez'
};
var miPersona = Persona(datosPersona);
var nombre = miPersona.getNombre();
var primerApellido = miPersona.getPrimerApellido();
var segundoApellido = miPersona.getSegundoApellido();
QUnit.test("prueba", function(assert) {
assert.equal(nombre,"Juan","El nombre es correcto");
assert.equal(primerApellido,"Garcia","El primer apellido es correcto");
assert.equal(segundoApellido,"Lopez", "El segundo apellido es correcto");
});
});

和index.html:

<html>
<head>
<meta charset="utf-8">
<title>Ejemplo basico de javascript</title>
<link rel="stylesheet" href="qunit-2.9.2.css">
<script src="./qunit-2.9.2.js"></script>
<script src="./jquery-3.2.1.slim.min.js"></script>
<script src="./controlador.js"></script>
<script src="./persona.js"></script>
</head>
<body>
<div id="qunit"></div>
<div id="qunit-fixture"></div>
</body>
</html>

Output in Browser

当我尝试以下代码时,它不起作用,它给出了图像中显示的错误,因为当我在浏览器中运行它时它不起作用 Qunit 找不到要启动的测试,我使用 mozilla firefox 和 Visual Studio 代码,但我不认为这是问题

最佳答案

我认为问题在于 QUnit 在文档就绪时运行,而您的 document.ready 其 document.ready 之后运行。因此,您的测试(在 controlador.js 中)尚不存在。相反,请按照上面注释中建议的顺序( Angular 色 before controlador)对 HTML 文件重新排序,并在末尾添加 JS 文件,然后删除您的代码的 document.ready。

这是一个example in JSFiddle它“有效”是因为它运行 QUnit。您的代码中还有其他问题,但希望运行测试会有所帮助。

在 html 文件中:

<html>
<head>
<meta charset="utf-8">
<title>Ejemplo basico de javascript</title>
<link rel="stylesheet" href="qunit-2.9.2.css">
</head>
<body>
<div id="qunit"></div>
<div id="qunit-fixture"></div>

<script src="./jquery-3.2.1.slim.min.js"></script> <!-- put jQuery first! -->
<script src="./qunit-2.9.2.js"></script>
<script src="./persona.js"></script> <!-- notice this one BEFORE controlador -->
<script src="./controlador.js"></script>
</body>
</html>

然后在controlador.js中:

QUnit.test("prueba", function(assert) {
// Note that I moved all test code INSIDE the test case, this is the proper way.
var datosPersona = {
nombre : 'Juan' ,
primerApellido : 'Garcia',
segundoApellido : 'Lopez'
};
var miPersona = Persona(datosPersona);
var nombre = miPersona.getNombre();
var primerApellido = miPersona.getPrimerApellido();
var segundoApellido = miPersona.getSegundoApellido();

assert.equal(nombre,"Juan","El nombre es correcto");
assert.equal(primerApellido,"Garcia","El primer apellido es correcto");
assert.equal(segundoApellido,"Lopez", "El segundo apellido es correcto");
});

关于javascript - 未找到 QUnit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60102426/

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