2015-10-20 87 views
0

我现在要道歉了,因为我对实习生非常陌生,并且知道我足够了解自己不知道什么地方。我正在使用实习生的最新版本。我看到很多关于如何从Intern生成的覆盖率报告中排除文件的详细信息,但没有包括默认情况下覆盖范围内的文件,现在要包含其他内容。实习生已经提供了仪器并提供了我运行的测试文件的覆盖率报告,但这对我没有任何好处。我需要我有几个定制的Dojo模块需要进行覆盖检测,但我似乎无法找到如何实现这一点。我目前只在运行功能测试。在实习生报道中包含自定义的Dojo模块

受测试的网站由本地IIS提供服务,但测试文件位于完全不同的文件夹中。默认情况下,似乎Intern正在测试测试文件并向我展示关于我的测试在运行中覆盖了多少的很好的报告。看到这个,我的想法是,我需要将所有的Intern安装和配置移动到本地IIS文件夹,这是我做的。实习生仍然只提供测试文件而不是Dojo模块的覆盖率报告。在IIS

wwwroot 
    | 
    --js 
    | 
    --Chai 
    --ckeditor 
    --myScripts 
    --dojo 
    --node_modules 
    Gruntfile.js 
    internConfig.js 
    package.json 

文件夹结构,我需要在myScripts Files文件夹仪表化代码覆盖。下面是我排除的内容:

excludeInstrumentation: /^(?:Chai|node_modules|ckeditor|dojo)\// 

看来这些文件夹中没有任何东西正在装配,所以至少我有这个权利。我目前没有在loaderOptions下定义任何东西,我不完全确定这是myScripts文件夹中的东西在功能测试时应该列出的位置。所以,问题是我如何获得该文件夹中的东西来检测代码覆盖率?

回答

1

为了进行检测,需要从运行intern-runner时由Intern创建的HTTP服务器请求代码。如果您直接从IIS加载代码,它将永远不会被检测,并且不能执行代码覆盖率分析。如果您需要使用IIS而不是内置服务器,则还需要配置IIS以将这些文件的代理请求逆向转换为Intern,如testing non-CORS APIs文档中所述。

+0

我在想这件事,如果它可能是解决方案。不幸的是,我坚持使用IIS,因为所讨论的应用程序是ASP.Net,因此它是反向代理。非常感谢。 – MBielski

+0

在反向代理没有运气之后,我选择预先测试这些文件。一切都很顺利,我收到了一份报道。问题是,它看起来像预先装好的文件然后再次装备。以前从未见过。我没有在配置中设置proxyUrl。任何猜测? – MBielski