How to run Jasmine tests on Node.js from command line

前端 未结 4 1653
梦毁少年i
梦毁少年i 2020-12-14 05:40

How do I run Jasmine tests on Node.js from command line? I have installed jasmine-node via npm and written some tests. I want to run tests inside the spec direc

相关标签:
4条回答
  • 2020-12-14 06:05

    Try Karma (formerly Testacular), it is a testing library agnostic test runner done by Angular.js team

    http://karma-runner.github.io/0.12/index.html

    Jasmine support is well baked.

    http://karma-runner.github.io/0.12/intro/how-it-works.html

    0 讨论(0)
  • 2020-12-14 06:10

    The easiest way is to run the command in your project root:

    $ npx humile

    It founds all your specs which name ends with .spec.js.

    If you think humile is fine for your project, just install it as dev dependency. It speeds up the command.

    $ npm install -D humile

    0 讨论(0)
  • 2020-12-14 06:12

    EDIT

    It seems this is no longer the current best answer as the package is unmaintained. Please see the answer below


    You can do this

    from your test directory

    sudo npm install jasmine-node
    

    This installs jasmine into ../node_modules/jasmine-node

    then

    ../node_modules/jasmine-node/bin/jasmine-node --verbose --junitreport --noColor spec
    

    which from my demo does this

    Player - 5 ms
        should be able to play a Song - 2 ms
    
        when song has been paused - 1 ms
            should indicate that the song is currently paused - 0 ms
            should be possible to resume - 0 ms
        tells the current song if the user has made it a favorite - 1 ms
    
        #resume - 0 ms
            should throw an exception if song is already playing - 0 ms
    
    Player - 5 ms
        should be able to play a Song - 2 ms
    
        when song has been paused - 1 ms
            should indicate that the song is currently paused - 0 ms
            should be possible to resume - 0 ms
        tells the current song if the user has made it a favorite - 1 ms
    
        #resume - 0 ms
            should throw an exception if song is already playing - 0 ms
    
    Finished in 0.01 seconds
    5 tests, 8 assertions, 0 failures, 0 skipped
    
    0 讨论(0)
  • 2020-12-14 06:29

    This should get you going quickly:

    1. install Node.js (obviously).
    2. Next install Jasmine. Open a command prompt and run:

      npm install -g jasmine

    3. Next, cd to any directory and set up an example 'project':

      jasmine init
      jasmine examples

    4. Now run your unit tests:

      jasmine

    If your jasmine.json file is somewhere else besides spec/support/jasmine.json, simply run:

    jasmine JASMINE_CONFIG_PATH=relative/path/to/your/jasmine.json

    For more info see:

    • https://www.npmjs.com/package/jasmine
    • http://jasmine.github.io/2.2/node.html
    0 讨论(0)
提交回复
热议问题