WebStormにJasmineメソッドを認識させるにはどうすればよいですか?


135

私が持っているNode.jsのいくつか含まれているプロジェクトジャスミンの仕様を。仕様はspec /サブディレクトリにあり、jasmine-nodeで必要な.spec.coffee拡張子が付いています

WebStorm IDEでスペックファイルの1つを開くbeforeEachdescribe、およびへのすべての呼び出しにit、ツールチップが付いた青い波線の下線が表示されます:「未解決の関数またはメソッドit()」。したがって、私は3.0 EAPを使用していて、ある程度のJasmineサポートがあるはずですが、これがJasmine仕様ファイルであるという事実を自動的に認識しません。

[ファイル]> [設定]> [JavaScriptライブラリ]に移動し、ライブラリとしてJasmineを追加(jasmine-2.0.0.rc1.jsへのパスを指定)してから、[使用範囲]サブページに移動して、[Jasmine]を確認しました[プロジェクト]の横にあるドロップダウンリストですが、効果はありませんでした-ジャスミンメソッドは未解決として表示されます。

specサブディレクトリ内のすべてのファイル、または.spec.coffee拡張子が付いたすべてのファイルがJasmineテストであり、それらのテストが使用しているJasmine APIを認識させるには、どうすればWebStormに通知できますか?


3.0 EAPでも同じ問題があります。これが2.1.5で作業している理由です。
Microfed

開発者が将来のバージョンでこのようなケースに対処できるように、これを問題としてyoutrack.jetbrains.net/issues/WIに提出してください。
CrazyCoder

@Microfed、あなたは2.1.5が自動的にJasmineテストを認識すると言っていますか?これはすでに記述されているバグですか?
ジョーホワイト

回答:


238

Webstorm / PHPStorm / Ideaで事前定義されたJSライブラリスタブを使用できます。

  • ファイルを開く>設定...
  • [ 言語とフレームワーク] > [ JavaScript]> [ライブラリ]を選択します
  • ダウンロードをクリックします...

JavaScriptライブラリの設定

  • TypeScriptコミュニティスタブへの切り替え
  • karma-jasmine(元々はjasmineという名前)を見つけます(これが機能しない場合は、代わりにjasmineを試してください)
  • ダウンロードとインストールをクリックします

ここに画像の説明を入力してください

Jasmine 2.0でこの設定を使用しています


2
カルマジャスミンと呼ばれ、見つけやすくするために変更されました
Andrzej Rehmann

7
私には効きません。「describe」、「beforeEach」、「it」は灰色の下線付きで表示されます。
BuildTester1 2015

36
カルマを使用していない場合は、「ジャスミン」ライブラリをダウンロードして選択できます。それが、カルマジャスミンを試した後、私にとってうまくいったことです
Doug Seelinger

22
私はカルマを使用していますが、それを機能させるにはジャスミンだけをダウンロードする必要がありました。カルマジャスミンは機能しませんでした。
Didier L

3
最後のステップ
-IDEを

30

webstorm 2016.1.1を搭載したMacでは、次のようにしました。

  1. 設定を開く(webstorm-> preferenceまたは[command +、])
  2. ライブラリとフレームワーク-> javascript->ライブラリに移動します
  3. ダウンロード
  4. リストから「jasmine-DefinitelyTyped」を選択します

ジャスミンのサポートがwebstormに追加されました


4
Macではうまくいきましたが、WebStormを閉じて再起動する必要がありました。
ジム

jasmineWindowsマシンでIntelliJ 2016.3を使用してライブラリをダウンロードしましたが、再起動しなくも機能しました。
Jelle

また、「タイプ」をグローバルからプロジェクトに変更する必要がありました。ダブルそれをインストールした後、ライブラリの名前をクリックし、「可視性」の設定を変更する
providencemac

6

WebStormでJSHintなどのコード品質ツールを使用している場合、グローバルjasmin / karma-jasmineライブラリを追加しても、JSHintエラーは解消されませんでした。

WebStormのメニューシステム(Lang&Frameworks> JavaScript> Code Quality Tools> JSHint)を介してJSHint設定にアクセスし、チェックボックスをクリックして、実行中の環境を認識できるようにする必要があります。

JSHint設定


ジャスミンが私の環境にありません。それはあなたにどのように現れましたか?
Aseem Bansal

@AseemBansal jshintのどのバージョンを使用していますか?
prasanthv 2015年

私はバージョン2.5.10を使用しています
Aseem Bansal 2015年

4

TypeScript(およびAngular2)を使用すると、WebStorm設定でTypeScriptコンパイラを有効にする必要があります...

設定>言語と設定> TypeScript ...

コンパイラの見出しティックの下で...

TypeScriptコンパイラを有効にする...

(私はまた、tsconfig.jsonラジオをクリックしました)

ジャスミンのメソッドが認識されるようになります


このソリューションの問題は、を使用WebStormしているTypeScriptため、自分でコンパイルしたくないことですWebpack
theblang 2016

興味深いことに、私がをプロジェクトnew projectとして作成すると、Angular CLIそれが認識されます。何が違うのかわかりません。
theblang 2016

TypeScriptをトランスパイルするためにgulpを使用します。tsconfig.jsonを正しく設定すると、TypeScriptは出力ファイルを生成せず、IDEでそれらを検証するだけです。
danday74 2016

私のために働いた。tsconfig.jsonをチェックすることを忘れないでください
Michael Kornelakis

これはほとんどエラーなしで機能しました。ただし、これを実行すると、WebStormのTypescriptコンパイラタブからこのエラー出力が表示されます。 ":5023}、{" messageText ":"不明なコンパイラオプション 'lib'。 "、" category ":1、" code ":5023}、{" messageText ":"不明なコンパイラオプション 'typeRoots'。 "、" category ":1、"コード ":5023}]
Nikola Schou

4

これは、依存関係の欠落が原因である可能性もあります(TypeScriptで開発している場合)。

インストールしたことを確認してください @types/jasmine

npm install --save-dev @types/jasmine

2

を使用してプロジェクトを生成した後にこの問題が発生した場合はAngular CLI、にアクセスしFile -> Settings -> Languages & Frameworks -> JavaScript -> Librariesて確認してください{your-project-name}/node_modules

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.