0

My general problem is how to run unit tests with karma in IE or other browser installed on a Windows machine, while karma is run on a Linux machine, though in the question below I might ask more specific question based on what I've already tried.

Also it may be worth to mention, that I have Windows installed on a Virtual box machine.

I started karma from a terminal, then opened in IE this url: http://10.0.2.2:9876 and saw the karma page in the browser window (though I spotted some quick blink with a red background, I suppose it is related to an error I'll mention further).

After that I tried to run tests with the command: node_modules/karma/bin/karma run config.js in another terminal tab. When I did this I got this error (I get it even when I use Chrome on my Linux host-machine instead IE on the Virtual box guest, so I suppose the error has nothing to do with networking):

You need to include some adapter that implements __karma__.start method!

I googled for this error and found another question: Error: You need to include some adapter that implements __karma__.start method Supposing that I need to run tests from the same place I started karma-server I tried to redirect the output to another tab:

$node_modules/karma/bin/karma start &> /dev/pts/17 &
$node_modules/karma/bin/karma run config.js

But this did not help. If I try to start server and run tests in a single command, then I do not have time to register IE.

So could anyone please answer any of the next questions:

  • how to run unit tests with karma in a browser on other machine?
  • how to get rid of this error You need to include some adapter that implements __karma__.start method!, if the karma server was started in one terminal tab and the run command was issued in another?
  • how to start the karma server and run tests in separate steps, i.e. issue the karma start and karma run config.js commands instead of karma start config.js?

My regards and sincerest appreciation in advance for any help.

Community
  • 1
  • 1
d.k
  • 4,234
  • 2
  • 26
  • 38

1 Answers1

0

Currently I've found a workaround for this. I start karma with the config file:

 karma start config.js

in the config I have singleRun: false.

Then I manually connect my IE instance, and after this I run the tests from another terminal tab. Why this happens I have no idea. The only inconvenience is that I always have browsers' windows open.

d.k
  • 4,234
  • 2
  • 26
  • 38