Javascript集成测试框架

Javascript Integration Testing Framework

本文关键字:框架 集成测试 Javascript      更新时间:2023-09-26

在我们当前的项目中,我们使用了带有Telerik库的ASP.NET,直到最近,我们还使用了MVP(模型视图演示器)模式。在这个场景中,视图被设计成愚蠢的,因为它没有任何基于计时器的业务逻辑和轮询机制,该计时器用于从演示者那里获取数据并在视图中显示。有了这种结构,使用集成测试(一直测试到数据库)测试应用程序就很容易了。

最近,我们转向了SignalR,并在视图中添加了重要的JavaScript逻辑,以处理SignalR引发的事件,但由于这一点,我们的集成测试的代码覆盖率较低,测试的完整性也不太好(即使应用程序本身失败,测试仍在通过)。

那么,有人使用了一个可以用来模拟JavaScript执行的框架(包括signalR库)和C#代码,以便测试整个场景吗?

我们使用Chutzpah运行Javascript Logic,并测试Signalr Server HUB API。

我们的Javascript测试是使用QUnit创建的(chutzpah也支持Jasmine)。

Chutzpah的测试运行程序允许您利用phantom.js在Visual Studio中运行js测试,phantom.jsp使用无头浏览器。您可以在Visual Studio中运行服务器和js逻辑并验证/运行结果。此外,我们使用signaler的OWIN自托管HUB,这对模拟我们的测试非常有效。

Chutzpah提供了其他功能,所以我建议您查看一下,看看什么最适合您。

我还想看看Jabbr是如何运行测试的。他们还使用Chutzpah以及一些更复杂的技术,这些技术可能对你很有用。