JQuery ve bootstrap bileşenlerini kullanan bazı direktiflerle bir angularjs uygulamasına sahibim. Yani, direktifleri test etmek için, ben karma.unit.conf.js dosyaların aşağıdaki siparişi tanımlamış:Karma Runner> Açılış ve açısal-alay öncesi bootstrap.js yükleniyor
files = [
JASMINE,
JASMINE_ADAPTER,
'app/components/jquery/jquery.js',
'app/scripts/vendor/bootstrap.js',
'app/components/angular/angular.js',
'app/components/angular-mocks/angular-mocks.js',
'app/components/angular-ui/build/angular-ui.js',
'app/scripts/app.js',
'app/scripts/**/*.js',
'test/spec/unit/**/*.js'
];
Ben ilk angularjs ve açısal-mocks ve sonra jquery ve ön yükleme alanı yüklerseniz, testler çalışır ve başarısız olur çünkü açısal kendi jQLitesini kullanır.
Düzenleme::
Ben istisna neyin neden jQuery olmadığını tespit ettik ... Bu bootstrap.js var ben sırasını değiştirmek Ama eğer o zaman bu ne alıyorum buraya yazdığı gibi . Bootstrap.js satırına yorum yaparsam, testler çalışır (ve bootstrap bileşenlerinin hiç yüklenmediği için beklendiği gibi başarısız olur). Yukarıda (veya tetkiklerden önce başka bir yerde) olarak önyükleme yüklerseniz o zaman bu olsun:
PhantomJS 1.8 (Linux) Directive: tkModal should make hidden element visible FAILED[39m
at /home/ir/work/campari/app/components/jquery/jquery.js:1763
at /home/ir/work/campari/app/components/jquery/jquery.js:2833
at /home/ir/work/campari/app/components/jquery/jquery.js:2850
at /home/ir/work/campari/app/components/jquery/jquery.js:2850
at /home/ir/work/campari/app/components/jquery/jquery.js:2850
...
at /home/ir/work/campari/app/components/jquery/jquery.js:2850
at /home/ir/work/campari/app/components/jquery/jquery.js:2850
at /home/ir/work/campari/app/components/jquery/jquery.js:2850
at /home/ir/work/campari/app/components/jquery/jquery.js:3656
at /home/ir/work/campari/app/components/jquery/jquery.js:648
at /home/ir/work/campari/app/components/jquery/jquery.js:270
at /home/ir/work/campari/app/components/jquery/jquery.js:3657
at /home/ir/work/campari/app/components/jquery/jquery.js:3664
at /home/ir/work/campari/app/components/angular-mocks/angular-mocks.js:1589
at /home/ir/work/campari/app/components/angular-mocks/angular-mocks.js:1627
Test başarısız önce 15k kere sonsuz tekrarlar at /home/ir/work/campari/app/components/jquery/jquery.js:2850
hattı (o zaman jQuery çalışır oluyor gibi görünüyor internalData işlevini jquery.js: 1763) yürütmek için. cevabını Bulunan
çözüldü, bu 2.3.1 güncelleme, sürüm 2.3.0 bir önyükleme sorun oldu o çözüldü:
herhangi bir fikir Düzenleme
Kendi sorunuza cevap verdiyseniz, bu soruyu yanıt olarak göndermelisiniz. Bu şekilde, 'cevapsız' bölümünde görünmeyecek ;-) –
@TylerEich, o zaman cevapları gönderemedim, şimdi ekleyeceğim – rvignacio