Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何为Express.js应用程序设置有效的单元测试和场景测试框架?_Javascript_Node.js_Unit Testing_Express_Coffeescript - Fatal编程技术网

Javascript 如何为Express.js应用程序设置有效的单元测试和场景测试框架?

Javascript 如何为Express.js应用程序设置有效的单元测试和场景测试框架?,javascript,node.js,unit-testing,express,coffeescript,Javascript,Node.js,Unit Testing,Express,Coffeescript,我正在建立一个Express/AngularJS项目。Express将为AngularJS提供静态资产,并充当API服务器。我想对express控制器和端点进行单元测试 我可能也有一些需要测试的场景(比如首先创建一个用户,然后登录,等等)。我还想要代码覆盖率。哦,我有没有提到它也都在CoffeeScript中 我正在使用karma和jasmine进行角度测试。对于node.js层,我希望使用类似的框架 有什么关于开始的建议吗?非常适合。你应该能够使用它与茉莉或摩卡很容易。可以帮助模拟已登录的用户

我正在建立一个
Express
/
AngularJS
项目。Express将为AngularJS提供静态资产,并充当API服务器。我想对express控制器和端点进行单元测试

我可能也有一些需要测试的场景(比如首先创建一个用户,然后登录,等等)。我还想要代码覆盖率。哦,我有没有提到它也都在
CoffeeScript

我正在使用
karma
jasmine
进行角度测试。对于node.js层,我希望使用类似的框架

有什么关于开始的建议吗?

非常适合。你应该能够使用它与茉莉或摩卡很容易。可以帮助模拟已登录的用户


如果您需要一个示例,请查看一些mocha+supertest测试:

我如何使用此测试控制器?您可以向应用程序发送模拟HTTP请求,并设置对响应的预期。它测试您的整个堆栈,包括路由和控制器。试试看。发布一些代码。添加了示例链接。看起来Supertest实际上正在启动服务器并发送请求。它真的在制造模拟吗?我在文档中找不到这方面的任何参考。这看起来像是集成测试而不是单元测试。我不想讨论单元测试的语义。如果您模拟数据库,然后发送一个真实的superagent请求,我称之为单元测试。OP询问的是比典型单元测试范围大得多的场景。他还询问了代码覆盖率,这通常意味着端到端。