在所有的实习生页面上的例子,一个静态的html文件是服务一些前端框架(骨干,烬等)。 所以在功能测试的例子中,路径静态html文件被传递给get方法。
this.remote.get(require.toUrl('index.html'))
在我的情况下,Rails应用程序的服务了其承载骨干网应用程序的HTML页面。 有没有办法让实习生仪器时,正担任它的轨道骨干应用程序? 我发现来获得功能测试运行的唯一方法是运行Rails应用程序的URL传递给get方法。 (通过nginx的运行)
this.remote.get('http://localhost/')
虽然这使功能测试运行,它不会通过端口9000监听传入因此,我没有得到任何覆盖的统计信息。
不幸的是,插桩服务器是不可配置试图从另一个HTTP服务器检索文件,它只会从本地磁盘读取文件,因此它不可能使用它作为一个直通的插装通过在Rails应用程序提供服务的的JavaScript这个时候除非这些实际上是被静态nginx的服务(在这种情况下,你可以设置一个反向代理实习生JavaScript文件 )。
如果你能重新配置的Rails拉从插桩服务器,而不是文件系统的JavaScript,将工作。 您也可以尝试通过运行,通过伊斯坦布尔的命令行工具中的文件预插装你的JavaScript代码:
istanbul instrument --variable __internCoverage --no-compact --output output-dir input-dir
文章来源: How do I run functional tests in Intern against a backbone app being served up by rails?