gpt4 book ai didi

javascript - Yui Test - 组织文件

转载 作者:行者123 更新时间:2023-11-28 01:40:16 25 4
gpt4 key购买 nike

我希望在我的网站中实现“Yui Test”以使用 TDD 方法。我还安装了 yuitest CLI (npm install -g yuitest)。

我不知道如何组织我的文件,我想将 js 代码留在“www/js/functions.js”文件中,并创建一个新文件“www/js/tests.js”来放置我的文件测试。

问题是我不知道如何连接不同的文件。我会尽力解释。

在我的“www/js/tests.js”文件中,我有以下代码(通过网站上的示例):

var testCase = new Y.Test.Case({

name: "TestCase Name",

//---------------------------------------------
// Special instructions
//---------------------------------------------

_should: {
error: {
testSortArray: true //this test should throw an error
}
},

//---------------------------------------------
// Tests
//---------------------------------------------

testSortArray: function () {
sortArray(12); //this should throw an error
}

});

在我的“www/js/functions.js”文件中我有这个函数:

function sortArray(array) {
if (array instanceof Array){
array.sort();
} else {
throw new TypeError("Expected an array");
}
}

显然它不起作用,因为当我运行测试“yuitest www/js/tests.js”时,它在“www/js/functions.js”文件中没有看到我的函数。

显然,如果我将函数从“www/js/functions.js”文件移动到“www/js/tests.js”文件,它就可以工作。

但我需要分开这些文件。有什么建议吗?

谢谢!

最佳答案

我使用tests.html页面引入所有必要的资源并执行测试。

所以tests.html将会:

  • 包括 YUI
  • 包含functions.js
  • 包含tests.js
  • 创建一个包含我所有测试的 Y.Test.Suite
  • 调用 Y.Test.Runner.add(mySuite)
  • 创建一个 Y.Test.Console 来呈现我的结果
  • 调用 Y.Test.Runner.run();

你也可以使用YUI加载器来加载你的functions.js,但我没有尝试过(主要是因为我测试的代码都是YUI模块,所以加载器可以很好地加载和使用它们) )

关于javascript - Yui Test - 组织文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21001506/

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