gpt4 book ai didi

javascript - 编写可测试的 JavaScript 代码

转载 作者:行者123 更新时间:2023-11-29 20:05:26 24 4
gpt4 key购买 nike

我开始深入研究 JavaScript 的一些工作,并试图了解我应该如何编写可测试的 JS 代码。我的背景主要是 Java,我对此非常熟悉,但我没有 JavaScript 经验。阅读之后,我打算使用 js-test-driver 作为我的单元测试框架,但我也愿意接受这里的建议。对于 Java,我的方法一直是将事物分解为接受某些东西并返回某些东西的小方法……对于 JavaScript,我想我会采取类似的方法,将任何 DOM 操作和实际逻辑分成两个单独的函数。例如:

function sumValues(valA, valB) {
return (valA + valB);
}

function displayResult(result) {
document.getElementById('result').innerHTML = 'result';
}

因此,任何业务逻辑都可以轻松测试。

我走在正确的轨道上还是有更好的做事方式?关于这个主题的任何推荐的 JS 特定阅读?感谢您的任何想法

最佳答案

当然,将代码分解为逻辑单元仍然适用于 JavaScript。至于如何精确地构建代码和组织可重用性,有许多不同的方法可供选择——太多了,无法在此处列出,这也是个人喜好的问题。从原型(prototype)继承,到伪经典继承;使用类似 backbone.js 的框架, angular.js , require.js , yui , google closure ...

关于您的示例,您可能会开始将代码分成可单独测试的 View 和 Controller ,并且只有 View 可以操作 DOM。我会查看 backbone.js了解更多。

一本真正帮助我开始使用 JavaScript 进行测试驱动开发(并同时学习 JavaScript)的书是 Test-Driven JavaScript Development作者:克里斯蒂安·约翰森。

我正在使用 JsTestDriver,它是一款很棒的软件,绝对好用。但在大规模使用它之前,我也会评估其他产品,因为最近 JsTestDriver 的开发进展非常缓慢.. Buster.JS看起来很有前途。另一个有趣的运行者是 Testem这允许你使用不同的测试框架,比如 MochaJasmine .

我也可以推荐Sinon.JS作为模拟工具包。

关于javascript - 编写可测试的 JavaScript 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12133582/

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