当我使用最新的angular cli(beta 15 w/webpack)运行ng测试时,如何为资产提供服务?

当我使用最新的angular cli(beta 15 w/webpack)运行ng测试时,如何为资产提供服务?,angular,typescript,webpack,angular-cli,Angular,Typescript,Webpack,Angular Cli,当我尝试运行ng测试时,我的所有模块和组件都正确加载,但我在标记中包含的任何资产都不会呈现,因为它们没有在/assets文件夹中提供服务(就像在构建中或使用ng serve进行开发时一样) 除此之外,如果知道如何将global styles.scss/css文件包含在测试中,那就太好了,因为只有将css放到组件中并禁用viewcapsulation,我才能渲染这些样式 我正在使用最新的angular cli网页包版本(Beta 15) 非常感谢您的帮助 我找到了答案 默认情况下,angular

当我尝试运行ng测试时,我的所有模块和组件都正确加载,但我在
标记中包含的任何资产都不会呈现,因为它们没有在/assets文件夹中提供服务(就像在构建中或使用ng serve进行开发时一样)

除此之外,如果知道如何将global styles.scss/css文件包含在测试中,那就太好了,因为只有将css放到组件中并禁用viewcapsulation,我才能渲染这些样式

我正在使用最新的angular cli网页包版本(Beta 15)

非常感谢您的帮助

我找到了答案

默认情况下,angular cli(网页包)中的karma设置在默认情况下不会为您的资产文件夹提供服务,但这非常容易添加(一旦您筛选了文档)

下面是我的结果截图和我为使其工作而添加的代码

在左边,你可以看到我的Billy Mays的照片正在被送达,在右边,如果你看json的“文件”部分,我添加了以下内容:

{ pattern: './src/assets/**', watched: false, included:false, nocache:false, served:true }
我还添加了一个proxies属性,以获取服务内容(默认情况下服务于端口号)]/base

proxies: {
   '/assets/': '/base/src/assets/'
},
通过指定
/assets/
作为文件夹代理,karma使用路径
localhost:[karma端口号]/assets
而不是默认值


我很高兴能够回答我自己的问题,希望这能帮助一些从angular cli开始的人!

我知道上面写着不要说谢谢,但是,谢谢!我在第一次阅读时错过了上面的“文件”部分,因为它没有像“代理”部分那样标记为代码-也许你可以重新格式化?它可以作为此错误的解决方案。@ProgrammerInProgress,您知道如何通过http:http.expectOne(“./assets/i18n/2/en.json”)请求文件吗这行吗?非常古老但非常相关的帖子。谢谢。顺便说一句,当代理部分未设置
未处理的弹出:无法读取未定义的属性“范围”时,karma和webpack当前崩溃。请参阅我的帖子,它将最终链接到您,因为您的解决方案更好:)