我不喜欢保存文件,切换到网络浏览器并刷新并查看它是否有效。
这就是我要问的原因。
当我必须触摸PHP时,我使用Eclipse,我可以创建单元测试并确保它正常工作,我不会写一点,测试然后写一点并测试。所以我希望"开发" Javascript以同样的方式,编写一个块,确保它有效,但我不确定如何测试按钮触发的操作说。
我已经搜索过" Javascript开发"和其他术语一样,我得到了预期的废话...好吧你好世界的Javascript snippits真的。
有人能指出我正确的方向吗?我目前使用Eclipse(Eclipse CDT,PyDev,Eclipse PHP等),我可以调试。我可以在没有Javascript的逐步调试的情况下做到,但我真的很喜欢单元测试。
我遇到的另一个问题是难以找出问题所在,甚至PHP都可以给你一个通话跟踪,我在网络开发人员中遇到了Firefox的烦人的访问错误设置。
必须有更好的方法,但我很难找到它。
答案 0 :(得分:1)
Firefox确实有一个名为firebug的插件。如果这不是你正在讨论的烦人的Firefox工具,你应该检查一下,看看它是否会对你有所帮助。
答案 1 :(得分:1)
第一步;静态分析:http://www.jslint.com/
答案 2 :(得分:1)
我建议你使用chrome开发者模式,或者你可以使用firebug
for firefox。
从here
获取萤火虫答案 3 :(得分:1)
看一下Grunt,它是一个命令行“JavaScript任务运行器”,它有助于自动化缩小,编译,linting和单元测试等事情。
许多其他工具和框架都有很多插件。如果您不使用不支持单元测试的框架或框架,则应使用测试框架。看看,这里有一个(主要是tdd样式)框架列表:JavaScript unit test tools for TDD
测试通常通过grunt test
在控制台中“无头”运行。根据测试框架的不同,可能还会有一个更好看的生成网页,向您显示最新的测试结果。您可以在IDE中设置按钮/热键/操作以运行此控制台命令(大多数编辑器也具有此功能)以开始您的单元测试。
我使用grunt作为Yeoman的一部分(它添加了一个包管理器和脚手架以及一些grunt插件),其中我发现的最有用的功能是你可以对文件更改进行咕噜声。这意味着您甚至不需要设置IDE或文本编辑器来使用grunt。您只需保存文件,grunt将自动运行单元测试等任务。另一个有用的功能是grunt serve
命令与livereload插件结合使用,它将启动一个服务器,在您保存文件时自动在浏览器中重新加载页面。
缺点是它似乎更专注于单页面webapps。如果你有在服务器端生成的复杂页面而只有一些javascript它可能不适合你的需要。
答案 4 :(得分:1)
如果你想进行单元测试,你会谈到QUnit,Jasmine或Mocha / Chai。 (我用Mocha / Chai)。棘手的部分是没有浏览器测试。您的第一个选择是使用CasperJs和PhantomJs。这些无头浏览器可以运行JavaScript而无需在实时浏览器中运行,因此您可以从命令行自动执行所有测试。如果您还添加了Karma,则可以使用无头方式在指定的浏览器中进行测试。
如果您使用的是PHP,则可以从Packagist存储库安装Codeception。在集成测试模块下,添加Selenium。然后,这将询问您希望它启动的浏览器。这是使用PHP和PHP进行测试的最好方法(如果你使用PhpBrowser,另一个是默认包,它更快,但它不能识别javaScript),但它具有很高的性能成本,因为它实际上会打开一堆不同浏览器并进行每项测试。除了作为构建过程的最后一部分之外,我不建议这样做。
如果你想学习如何彻底测试JavaScript,这是你的家伙:
答案 5 :(得分:1)
我正在使用jasmine.js进行单元测试。
我的编辑器是Brackets,它有一个内置的网络服务器。括号打开你的html页面,其中包含JS代码,即每次你保存由html文件加载的js文件时自动重新加载页面。
结合茉莉花我有一个设置,我的单位测试总是在我保存js文件时运行。
但是,如果您想测试Button的功能,这并没有什么帮助。我认为有两种可能性: