使用新的Visual Studio 2017 Angular模板,如何添加Jasmine测试

时间:2017-10-15 20:14:15

标签: asp.net-core jasmine visual-studio-2017

我正在使用新的Visual Studio 2017 ASP.Net Core Angular模板 https://blogs.msdn.microsoft.com/webdev/2017/02/14/building-single-page-applications-on-asp-net-core-with-javascriptservices/ 我的小应用程序已创建,现在我想添加一些测试。我无法看到如何运行我的第一个Jasmine测试 - 正确引用相关库(vendor.js(?)等)。

=====

修改

仍然没有,但一起来了。从.Net背景与单独项目中的测试到测试代码,我没有意识到spec文件将与他们正在测试的代码位于同一文件夹中 - 现在我已经有了counter.component.spec.ts 。我还没有设法运行这些测试:根据R.Richards解决方案的评论,通过cmd行我得到Webpack not found错误;通过Resharper,Chrome打开时显示"未找到任何规格"和Resharper说"任务在超时时被跳过"对于每个测试。

1 个答案:

答案 0 :(得分:1)

首先,在.Net / Angular项目所在的目录( .csproj 文件所在的目录)中打开命令提示符。

运行此命令:

karma start .\ClientApp\test\karma.conf.js 

如果您收到有关业力不是已知应用程序的错误,请运行以下命令:

npm i -g karma

此命令全局安装karma,因此您可以在安装它的计算机上的任何位置从命令提示符运行它。

现在再次重新运行karma start命令。

karma start命令运行karma,这是一个测试运行器。它将使用karma.conf.js文件在项目中查找,编译和运行单元测试。

VS 2017 Angular模板附带一个已编写的规范(Jasmine框架单元测试)文件,该文件位于ClientApp\app\components\counter文件夹中,因此您应该看到2个测试成功运行,除非您已从中删除了spec文件该项目,或改变应用程序足以打破它们。

如何使用VS 2017 Angular模板运行基于Typescript / JavaScript的单元测试。