Eu tenho um projeto node.js que contém algumas especificações do Jasmine . As especificações estão em um subdiretório spec / e têm a extensão .spec.coffee, conforme exigido pelo jasmine-node .
Quando eu uma aberta dos meus arquivos de especificação na WebStorm IDE, todas as chamadas para beforeEach
e describe
e it
são mostrados com o azul squiggly sublinha com a dica: "função não resolvido ou método que ()". Portanto, mesmo que eu esteja usando o EAP 3.0 e que ele deva ter uma certa quantidade de suporte ao Jasmine , não está percebendo automaticamente o fato de que este é um arquivo de especificação do Jasmine.
Tentei entrar em Arquivo> Configurações> Bibliotecas JavaScript e adicionar o Jasmine como uma biblioteca (especificando o caminho para jasmine-2.0.0.rc1.js) e, em seguida, acessar a sub-página Escopo do Uso e verificar "Jasmine" no lista suspensa ao lado de "Projeto", mas isso não teve efeito - os métodos Jasmine ainda aparecem como não resolvidos.
Como posso informar ao WebStorm que todos os arquivos em um subdiretório spec e / ou todos os arquivos com extensão .spec.coffee são testes Jasmine e reconhecem as APIs Jasmine que esses testes estão usando?
Respostas:
Você pode usar stubs de biblioteca JS predefinidos em Webstorm / PHPStorm / Idea
Estou usando esta configuração com o Jasmine 2.0
fonte
Em um mac com o webstorm 2016.1.1, fiz o seguinte:
fonte
jasmine
biblioteca usando o IntelliJ 2016.3 em uma máquina Windows e funcionou, mesmo sem reiniciar.Observe que, se você estiver usando uma Ferramenta de qualidade de código, como JSHint, com WebStorm, adicionar a biblioteca global jasmin / karma-jasmine não se livra dos erros de JSHint.
Você precisa acessar as configurações do JSHint através do sistema de menus do WebStorm (Lang & Frameworks> JavaScript> Ferramentas de qualidade de código> JSHint) e clicar na caixa de seleção para permitir que ele saiba em que ambiente está executando.
fonte
Usando o TypeScript (e Angular2), você só precisa ativar o compilador TypeScript nas Configurações da WebStorm ...
Configurações> Idiomas e configurações> TypeScript ...
Sob o título do compilador, marque ...
Ativar compilador TypeScript ...
(Também cliquei no rádio tsconfig.json)
Os métodos Jasmine agora serão reconhecidos
fonte
WebStorm
compilar o meuTypeScript
desde que estou usandoWebpack
.new project
como umAngular CLI
projeto, então ele reconhece-los. Não tenho certeza do que é diferente.Isso também pode ser causado por uma dependência ausente (se você estiver desenvolvendo no TypeScript).
Verifique se você instalou
@types/jasmine
fonte
Se você encontrar esse problema após ter gerado um projeto usando o
Angular CLI
, vá paraFile -> Settings -> Languages & Frameworks -> JavaScript -> Libraries
e verifique{your-project-name}/node_modules
.fonte