2

我開始使用Karma,基本上是node wrapper.js。該包裝器設置配置,包括呼叫karma-coverage,以require('karma').runner.run開始Karma。 karma-coverage呼叫到伊斯坦布爾。 (phew!)如何在通過Karma公共API運行時包含.istanbul.yml

我想用.istanbul.yml文件配置伊斯坦布爾文件,主要是因爲我想更改「報告水印」。這是我的文件的樣子。

reporting: 
    watermarks: 
    statements: [90, 97] 
    lines: [90, 97] 
    functions: [90, 97] 
    branches: [90, 97] 

這看起來正確,從我看到的。但是.. 它不起作用。我認爲問題在於伊斯坦布爾不知道當前的工作目錄,或者某種程度上需要通過karma-coverage來指定。

如果有幫助,我的噶爾config.basePath只是''

我試圖找到這個特定問題的討論。可悲的是,this question is the closest to my problem, but it's a FAQ entry about "how to name the file"。這裏是a question/answer discussing this in Grunt,但我無法提取任何有用的東西。

我還通過github上的業力運行者問題進行了探討,無論是開放還是關閉。查看業力運行者的來源,並將其合併with this issue from Istanbul,我認爲這是不可能的because of this line。我對麼?

回答

0

使用以下過程:

  • 轉到istanbul目錄karma-coverage模塊中:

    cd node_modules/karma-coverage/node_modules/istanbul 
    
  • 轉到lib目錄:

    cd lib 
    
  • 添加.istanbul.yml文件中有

config.js腳本在lib目錄通過以下行找到路徑.istanbul.yml文件:

path.resolve('.istanbul.yml') 

就是這樣。

path.resolve方法的工作原理如下:

如果仍然沒有絕對路徑發現使用所有的路徑後,當前的工作目錄使用。生成的路徑將被標準化,並且除非路徑被解析爲根目錄,否則將刪除結尾的斜線。

參考

+0

我沒有看到因果報應覆蓋伊斯坦布爾內的任意位置。 – Winnemucca