2013-06-24 26 views
-1

虽然一段时间以来我一直在编码JS,但我从来没有真正专注于正式测试,然后通常点击,希望有什么会打破。现在我想看看这应该如何正确完成,并想知道在编写JavaScript web应用程序时如何执行测试。据我所知,简而言之,为每个方法和返回值声明测试。如何测试JavaScript?

现在,它如何适应JavaScript开发中JS与DOM互动,JS动画,基于浏览器窗口计算距离等等。我会如何测试其他可能的问题,然后点击左右直到出现问题?此外多个浏览器,所有这一切让我非常困惑。

我的网络应用程序使用模块模式,严格模式编码,使用jQuery和一堆插件。点击直到休息的方式到目前为止工作得很好,但我相信有更好的办法,如果有人可以给我一个想法如何做到这一点,将不胜感激。

+0

您可以从Eclipse的集锦plugin- https://www.google.com/webhp?sourceid=chrome-instant&rlz=1C1CHKZ_enUS439US439&ion=1&ie=UTF-8#safe=off&rlz=1C1CHKZ_enUS439US439&sclient=psy-ab&q=Aptana+受益Eclipse的插件+ + OQ =集锦+ Eclipse的插件+ + gs_l = hp.3..0l4.4995.4995.2.5235.1.1.0.0.0.0.97.97.1.1.0 ... 0.0.0..1c.1.17.psy- ab.3zf51GdVJM4&pbx = 1&bav = on.2,or.r_cp.r_qf。&bvm = bv.48293060,d.dmQ&fp = 7c755eaf540a7915&ion = 1&biw = 1344&bih = 737 – Coffee

+1

是谁upvoting这?这是谷歌的一个非常普遍的问题。 –

+3

Rebecca Murphey最近写了[Writing Testable JavaScript](http://alistapart.com/article/writing-testable-javascript) – jeremy

回答

3

通常,使用模拟浏览器行为的工具可以完成使用UI交互描述的测试类型。

例如,Selenium可以用来自动化不同的浏览器并点击事物,然后声明页面的状态如预期。

另一个有用的工具是phantomjs,它本质上是一个无头脚本的浏览器。

这些可用于完整页面的集成/功能测试。使用这些,您可以编写一个测试脚本来定义一些交互(“点击X,将鼠标悬停在Y上”),然后验证页面的状态是您想要的(例如,通过检查CSS选择器是否匹配或者div是否可见等)

还有各种各样的JavaScript单元测试工具,可用于测试不使用DOM等的单个JS模块。

+0

OYA!硒是神话般的,是的。尽管如此,这是一款仅限Firefox的工具,是的? – Coffee