我很高兴与Javascript合作。
在大多数语言中,您可以在计算机上本地快速运行代码。从我所看到的,在JS中你通常只能通过浏览器使用它,所以我一直在上传我的代码,在浏览器中查看它的效果。事实证明这非常令人厌烦。此外,如果我犯了一个错误,似乎我的JS / JQuery只会做什么,而不是给我一个有用的错误,消息,这使得编写代码变得非常缓慢。
有没有办法在本地运行JS,看看它是否正常工作?我大部分时间只将它上传到网上?我有什么方法可以做到这一点?有什么方法让我在本地对Javascript进行单元测试?假设我有一些应该呈现为<p>HI</p
&gt;的JAML,如何在单元测试中本地运行?
感谢您的帮助, 亚历
编辑:
感谢所有伟大的建议。我将不得不花点时间仔细阅读一下,看看在我的情况下哪些最能帮助我。
答案 0 :(得分:6)
由于您使用的是jQuery,我认为您实际上想要操纵页面上的各种元素。因此,根据您的具体开发环境,每次上传都可能是最佳选择。如果您可以在本地计算机上设置开发环境(并非总是可行),那么请继续使用。
作为您问题的实际答案,我建议使用Chrome的开发者工具,它不仅包含控制台,还包含元素检查器和资源跟踪器(资源跟踪器在使用JSON和AJAX时非常有用,因为无效json会默默地失败)
据我所知,firefox的firebug插件(不要自己使用)有一个类似的功能集,所以如果你对它感觉更舒服的话。
请记住,作为开发人员,您的开发(和调试)环境与您编写的代码一样重要。
编辑:注意到您提到了单元测试。 JS有几个单元测试框架,包括一个与名为FireUnit的firebug集成的框架。如果您愿意,可以快速搜索谷歌搜索。
答案 1 :(得分:6)
您无需将JS文件上传到服务器进行测试。只需编写一个html并声明js绑定
<script
src="js/yourJSFile.js"
type="text/javascript"></script>
在您喜欢的编辑器中编辑JS文件,然后刷新页面进行测试。
对于单元测试,最佳选择是Selenium。它允许您记录与浏览器的交互,然后播放。
答案 2 :(得分:4)
您可以使用Firefox Firebug来调试JS,而Google Chrome内置调试器(使用工具 - >开发人员工具菜单)。
答案 3 :(得分:1)
您可以在浏览器中从计算机上的本地文件运行Javascript,这样您就可以跳过上传步骤。
另外,我建议使用Firefox / Firebug组合来开发Javascript,因为它非常方便,特别是对于你提到的没有看到你的代码出了什么问题的部分。
答案 4 :(得分:1)
即使您上传了javascript,只要您访问其中包含该内容的网页,它就会立即下载给您。它总是运行客户端。所以坚持当地并使用其他人说过的萤火虫。谷歌的开发者工具也很不错。
答案 5 :(得分:1)
如果您打开开发人员工具,请在浏览器中执行以下步骤:
1)导航到来源
2)在来源下,点击代码段并打开run.js
3)您可以使用run.js编写任意数量的代码并在本地运行它,以查看您的代码是否正常工作(它将在控制台上为您提供输出)
4)你也可以习惯一些键盘快捷键,让它更快。
5)对于小的JavaScript代码,您可以导航到控制台并在那里运行代码
答案 6 :(得分:0)
如果您想使用Javascript进行单元测试,可以使用Firebug的扩展程序来帮助您。我没有尝试过任何一个,所以我无法告诉你哪一个值得考虑,但如果你在Google上搜索关键字"Firebug unit testing",你就可以轻松找到它们。
答案 7 :(得分:0)
考虑Spider Monkey,它是一个独立于浏览器的JavaScript引擎。如果您正在开发的内容不涉及渲染到网页或者可以与渲染代码分离(良好实践!),那么这可能很有用。
答案 8 :(得分:0)
我更喜欢Chrome到Firefox,而我刚发现Web Server for Chrome。
它只是一个Google应用程序,可以为您快速设置Web服务器,并且可以在您登录Chrome的任何位置进行设置。它只允许文件访问当前设备,或者如果您指定,则只允许在当前LAN上访问其他设备。
您只需将其指向包含index.html文件的目录,然后在浏览器中输入http://127.0.0.1:8887
即可。
答案 9 :(得分:0)