2014-12-04 27 views
6

JavaScript'te basit bir Birim test yöntemi yapıyorum. Çıkış konsola yazdırılıyor.Stilleri konsol.table() olarak kroma ekle

Geçilen testlerin satırlarının yeşil olmasını ve başarısız testlerin kırmızı olmasını (arka plan veya metin) istiyorum.

Konsol.log() öğesine stiller ekleyebileceğimi biliyorum, ancak styles.table() öğesine stil eklemek için bir yol bulamadım.

Yani, bu mümkün mü? Aksi takdirde, bir alternatif ne olurdu.

Kod örnek: önceden

console.table([ 
    { 
     status: 'failed', 
     function: 'Validate.int', 
     asserted: true, 
     result: false 
    },{ 
     status: 'passed', 
     function: 'Validate.float', 
     asserted: true, 
     result: true 
    } 
]); 

Tnx!

+0

:

console.groupCollapsed('Testing unit: %s', unit); for (var r in results) { var res = results[r]; console.groupCollapsed('%c %c' + res.status, 'background-color: ' + (res.status === 'failed' ? 'red' : 'green') + '; margin-right: 10px', 'background-color: transparent'); console.table({ Result: {value: res.status}, Function: {value: res.function}, Asserted: {value: res.asserted}, Returned: {value: res.returned} }); console.groupEnd(); } console.groupEnd(); 

Bu aşağıdaki çıktıyı verir:

ben tablo içine yuvalanmış gösteren gruba sonuçlarını nests bir çözüm geldi . İhtiyaçlarınızı karşılarsa bana bildirin – faby

cevap

2

@faby, console.log() yöntemini kullanmak için güzel bir örnek oluştursa da, yine de sorunumu uygulayamadım. Ben de konsol.table() için stil eklemek mümkün değildir sonucuna geldim. Cevabımı güncelledik

Output

5

console.table içindeki console.log kullanmayı deneyin ve çalışma tarzlarını

kullanmak ve kodu test: Bu

var x = { 
      status: 'failed', 
      function: 'Validate.int', 
      asserted: true, 
      result: false 
     }; 

console.table(
     console.log('%c '+ x.status + x.function + ' ', 'background: #cdcdcd; color: #000000'), add other elements of the array); 

unsurları ile benim x yerine yapabileceğini dava için

console.table(console.log('%c test1 ', 'background: #cdcdcd; color: #000000'),console.log('%c test2 ', 'background: #ff0000; color: #ffffff')); 

senin dizi

+0

Bu tabloyu etkilemiyor gibi görünüyor, ancak stillenmiş çıktı ile başka bir satır ekler. Bu fikri beğeniyorum –

+1

Bu çözüm inanılmaz! Ve aslında işe yarıyor! –

+0

@ChrisLaarman neden çalışmıyor? Kodumu test ettim. Bana kodunuzu göster ve size yardımcı olmaya çalışacağım – faby