Ist es möglich, zu mischen Testacular (Karma) mit Winkel-Szenario?

Testacular (jetzt Karma) ist genial, so ist Winkel-Szenario. Mit Ihnen zusammen, erweist sich als eine Herausforderung, jedoch. Es ist eine ECKIGE SZENARIO-ADAPTER in Testacular, aber das bricht einfachen tests. Wenn Sie angular-scenario.js selbst Testacular wird führen Sie keine tests in allen. Hat jemand habe diese ordnungsgemäß ausgeführt?

WINKEL-SZENARIO-ADAPTER

Habe ich versucht, dies mit einem banalen test, aber ich sah einige seltsame Verhalten:

Test:

describe('Simple', function(){
    it('should compare strings', function(){
        expect('foo').toBe('foo');
    });
});

Normal mit config:

files = [
  JASMINE,
  JASMINE_ADAPTER,
//   ANGULAR_SCENARIO,
//   ANGULAR_SCENARIO_ADAPTER,
    'tests/lib/angular/angular.js',

    'tests/sample.js'
];

Ausgabe:

$ testacular start
info: Testacular server started at http://localhost:9876/
info (launcher): Starting browser ChromeCanary
info (Chrome 25.0): Connected on socket id KRwEUtKtiaJs3MoiEsNg
Chrome 25.0: Executed 1 of 1 SUCCESS (0.061 secs / 0.003 secs)

Beim hinzufügen der WINKEL-adapter config:

files = [
  JASMINE,
  JASMINE_ADAPTER,
    ANGULAR_SCENARIO,
    ANGULAR_SCENARIO_ADAPTER,
    'tests/lib/angular/angular.js',

    'tests/sample.js'
];

Ausgabe:

$ testacular start
info: Testacular server started at http://localhost:9876/
info (launcher): Starting browser ChromeCanary
info (Chrome 25.0): Connected on socket id 5YZA2fSuNXjmI-yRFGF6
Chrome 25.0 Simple should compare strings FAILED
        expect undefined toBe "foo"
        /Users/iwein/projects/epec/spa/tests/sample.js:3:9: expected "foo" but was undefined
Chrome 25.0: Executed 1 of 1 (1 FAILED) (0.195 secs / 0.018 secs)

Hinzufügen angular-scenario.js und hoffen, JASMIN-ADAPTER kann damit umgehen.

Habe ich auch versucht zu zählen angular-scenario.js selber, aber das ist eine Sackgasse.

//inside testacular.conf.js
files = [
   JASMINE,
   JASMINE_ADAPTER,
   'tests/lib/angular/angular.js',
   'tests/sample.js'
];

Bekomme ich die Ausgabe:

$ testacular start
info: Testacular server started at http://localhost:9876/
info (launcher): Starting browser ChromeCanary
info (Chrome 24.0): Connected on socket id uEzVQ6tqSu7M7tak4F6v
Chrome 24.0 Array #indexOf() should return -1 when the value is not present FAILED
    Expected true to be false.
    Error: Expected true to be false.
        at null.<anonymous> (/..../tests/sample.js:4:17)
Chrome 24.0: Executed 1 of 1 (1 FAILED) (0.07 secs / 0.004 secs)

Wenn ich angular-Szenario in der Mischung:

//inside testacular.conf.js
files = [
  JASMINE,
  JASMINE_ADAPTER,
  'tests/lib/angular/angular.js',
  'tests/lib/angular/angular-scenario.js',
  'tests/sample.js'
];

Die tests sind überhaupt nicht laufen:

 $ testacular start
 info: Testacular server started at http://localhost:9876/
 info (launcher): Starting browser ChromeCanary
 info (Chrome 24.0): Connected on socket id GcyCTxuvhyFcCaE14BEP
 Chrome 24.0: Executed 0 of 0 SUCCESS (0.116 secs / 0 secs)

Hat jemand diese ordnungsgemäß ausgeführt? Was ist mit der true immer undefined?

InformationsquelleAutor iwein | 2012-11-01
Schreibe einen Kommentar