top 15 code coverage tools
Java, JavaScript, C, C ++, C #, PHP, Eclipse, .Net ve diğer birçok programlama dili için en popüler kod kapsama araçlarının listesi:
Yazılım testinde, testin kapsamını ölçmenin birkaç yolu vardır. Kod kapsama yöntemi en önemli tekniklerden biridir.
Kod kapsama araçları kullanılarak, testler yapılırken test edilen kod miktarı belirlenebilir. Basit bir deyişle, kod kapsamı bize kaynak kodun ne kadarının bir dizi test senaryosu tarafından kapsandığını söyler. Kalite güvencesi çabalarının standart kalitesini sürdürmek önemli bir metriktir.
Kod kapsamı ölçülür testler çalıştırılırken toplam kod satırı sayısı üzerinden yürütülen satır sayısının yüzdesi olarak.
Test senaryoları yazılırken, maksimum kod kapsamı için tüm kriterler göz önünde bulundurulmalıdır, yani test senaryoları tüm ifadeleri, fonksiyonları, koşulları, yolları, kararları, döngüleri, parametre değerini, giriş ve çıkış kriterlerini kapsayacak şekilde yazılmalıdır.
Pazarda kod kapsamını ölçmek için birkaç aracımız var. Bu makalede bazılarını ayrıntılı olarak inceleyelim.
******************
= >> Bize Ulaşın listenizi burada önermek için.
******************
Ne öğreneceksin:
2019'un En Popüler Kod Kapsamı Araçları
Aşağıda, piyasada bulunan en popüler Kod Kapsamı Araçlarının listesi listelenmiştir.
# 1) Parasoft JTest
Parasoft Jtest, Parasoft test araçları paketinin ürünlerinden biridir.
Jtest, Java tabanlı uygulama geliştirmeyi minimum risk, uygun rehberlik ve analizle hızlandırmanıza olanak tanır. Manuel ve otomasyon testi ile entegre birim testi ve kod kapsamı için kullanılır. Raporu, kapsanan kodun iyi bir resmini sağlar ve böylece riskleri en aza indirir.

Ana Özellikler:
- Java tabanlı uygulamalar için kullanılır.
- Veri akışı analizi, Birim testi, Statik analiz, çalışma zamanı hata tespiti, kod kapsamı testi vb. İçeren çok görevli bir araçtır.
- Farklı çerçevelerden ve test yöntemlerinden kapsam toplayabilir.
- Komut satırı modunda, tutulmaya dayalı GUI veya CI sistemleriyle çalıştırılabilir.
- Yüksek kaliteli raporlama ve analizi, izlenebilirlik ve kod değişikliğine dayalı test ayrıntılarını da içerir.
Lisans türü: Tescilli ticari yazılım
Resmi URL: Parasoft JTest
Lehte ve aleyhte olanlar:
- Kullanması çok pahalıdır.
- Zamanı ve riskleri azaltmak için çok amaçlı bir çözümle en kaliteli ürün için iyi bir araçtır.
- Raporlar ve analizler çok kolay anlaşılır ve kalitenin maksimum yönlerini tamamlarlar.
En son sürüm: Sürüm 10.3.3, 7 Kasım 2017.
# 2) Testwell CTC ++
Testwell CTC ++, Verifysoft Technology tarafından çok popüler bir araçtır. C, C ++, C # ve Java için güvenilir bir kod kapsamı ve analiz aracıdır.
Bu, herhangi bir alandaki çoğu sektör için birincil seçimdir. Testlerin eksiksiz olmasını sağlar. Yeterlilik kiti ile birlikte gelir. Bu araç için ücretsiz deneme, çevrimiçi eğitim ve canlı sunumlar da mevcuttur. Yalnızca CTC ++ Host, CTC ++ Host-Target eklentisi ve CTC ++ Bitcov eklentisi olmak üzere üç paket halinde mevcuttur.
c ++ 'da statik değişkenler bildirme
C # ve Java için ayrı bir eklenti paketi gerektirir.
Ana Özellikler:
- Ana özelliği, farklı dil ve alanlardaki uygulamalar için kullanılabilmesidir.
- Tüm birim test araçlarıyla da kullanılabilir.
- Bir kod kapsama aracı olarak, tüm kriterler dahil tam kapsam sağlar.
- Raporlar düz metin, HTML, JSON, XML ve Excel biçiminde alınabilir.
Lisans türü : Başlangıçta deneme sürümü ücretsiz olarak mevcuttur. Onu veya eklentisini satın almak için onlarla iletişime geçmeniz gerekir.
Resmi URL: Testwell CTC ++
Lehte ve aleyhte olanlar:
- Çok güvenilir ve kullanımı kolaydır. Test edilmemiş kod dağıtımını önler.
- Ücretsiz bir deneme sürümü mevcuttur.
- C, Java, C # gibi farklı dillerdeki uygulamalar için kullanılabilir.
- Yüksek kod kapsamına sahip sağlık, ulaşım, otomotiv vb. Tüm alanlar için iyidir.
- Tüm derleyicileri ve çapraz derleyicileri destekler.
- Maliyeti açıklanmadığından, fiyatlandırma detayları için şirketle iletişime geçmeniz gerekir.
En son sürüm: Sürüm 8.2.2
# 3) Kapsam
Cobertura, Java için açık kaynak kod kapsama aracıdır. Bu, Jcoverage tabanlı bir araçtır. Bu aracı kullanmak için Maven eklentisini POM.XML dosyasında belirtmelisiniz.

Ana Özellikler:
- Java 7, Java 8, Java 9 ve Java 10'u destekler.
- Cobertura, komut satırından veya karınca çalıştırılabilir.
- Derlemeden sonra java bayt kodunu hesaplar.
- Branşlar, sınıf, paket vb. Dahil olmak üzere tüm kod kapsamı kriterlerini kapsar.
- Raporlar HTML veya XML olarak üretilir.
- Bu raporlar filtreleme, yükselme ve alçalma özelliklerine sahiptir.
Lisans türü: GNU Genel Kamu Lisansı (GPL)
Resmi URL: Kapsam
Lehte ve aleyhte olanlar:
- Açık kaynak kodlu bir kapsama aracıdır.
- İhtiyaca göre filtreleme seçenekleriyle raporları anlaşılması kolaydır.
- Geliştiriciler ve testçiler için iyi tasarlanmıştır.
- Yalnızca Java için çalışır.
En son sürüm: Sürüm 2.1.1
# 4) JaCoCo
JaCoCo, EclEmma tarafından geliştirilmiş ücretsiz bir kod kapsamı araç setidir. Emma kod kapsama aracının değiştirilmesi için geliştirilmiştir. Yalnızca Java tabanlı uygulamaları ölçmek ve raporlamak için kullanılabilir.

Ana Özellikler:
- Bu kod kapsama aracı yalnızca Java için kullanılabilir. Java 7, Java 8, Java 9 ve Java 10'u destekler.
- Yayınlanan tüm Java sınıfı dosya sürümleri ile uyumludur.
- Kod kapsamındaki satırları, talimatları, yöntemleri, türü, dalları ve döngüsel karmaşıklığı kapsar.
- Java kodunu iki farklı şekilde, yani kodu Java aracısıyla çalıştırırken veya çevrimdışı olan kodu çalıştırmadan önce uygulayabilir.
- Elde edilen verileri bir dosyada depolar veya TCP yoluyla gönderir. Rapor formatları arasında CVS, XML ve HTML bulunur.
- Test durumlarının Junit tabanlı olduğu fonksiyonel testlerin yanı sıra regresyon testlerini de destekler.
Resmi URL: JaCoCo
Lehte ve aleyhte olanlar:
- Bu bir açık kaynak kod kapsama aracıdır.
- Yalnızca Java kod kapsamına tabidir.
- Minimum çalışma süresinde büyük ölçekli Java projeleri için iyi performans sağlar.
- Dış kitaplıklara ve kaynaklara minimum bağımlılık ile daha az uygulama gerektirir.
- JaCoCo'yu destekleyen Jenkins, Netbeans, Gradle, TeamCity, VS TEAM SERVICES gibi birçok araç vardır.
- Kod kapsama raporu almak için JaCoCo'yu Maven, Junit vb. Yerlerde yapılandırmak kolaydır.
- JaCoCo tarafından oluşturulan rapor renkli ve anlaşılması kolaydır.
En son sürüm: Sürüm 0.8.1, 21 Mart 2018.
# 5) CodeCover
CodeCover aracı, Java yazılımı için bir kod kapsamı olarak kullanılabilen, genişletilebilir bir açık kaynaklı cam kutu test aracıdır. 2007 yılında Stuttgart Üniversitesi'nde geliştirilmiştir. Komut satırında, Eclipse ve Ant'ta çalıştırılabilir.

Ana Özellikler:
- Java uygulamaları için cam kutu test aracıdır.
- Terim kapsamı, soru işareti operatörü kapsamı ve senkronize kapsama ile birlikte ifadeleri, döngüleri, dalları vb. Kapsar.
- Raporlar, şablon motor hızı biçiminde oluşturulur.
Lisans türü: EPL - Eclipse Public License.
Windows 7 için ücretsiz dvd ripper
Resmi URL: CodeCover
Lehte ve aleyhte olanlar:
- Kod kapsamı için kullanılabilecek ücretsiz bir araçtır.
- Test kalitesini artırmak ve yeni test senaryoları oluşturmak için kullanılır.
- Java ve COBOL'de kullanımı sınırlıdır.
- Ayrıca, yalnızca tek bir kaynak dizini ölçmek için sınırlamaları vardır.
En son sürüm: 2011'de 1.0.1.2 sürümü
# 6) Bullseye Kapsam
Bullseye, C ++ ve C programları için bir kod kapsama aracıdır. Fiyatı ilk yıl için 800 dolar ve yenileme için yıllık 200 dolar.


Ana Özellikler:
- Bu kod kapsamı analizörü, C ++ ve C için kullanılabilir.
- Sonucu HTML, XML ve GUI formatına aktarma özelliğine sahiptir.
- Birleştirme, kod hariç tutma, görselleştirme gibi ek özelliklerle birlikte gelir.
- En büyük hayal kırıklığı, sonuçların birleştirilmesinin ancak işlevsel düzeyde yapılabilmesidir. İfade veya durum düzeyinde buna izin verilmez.
Lisans türü: Yüzer Lisans
Resmi URL: Bullseye
Lehte ve aleyhte olanlar:
- Kullanımı C ++ ve C ile sınırlıdır.
- Takım maliyetleri yüksektir. Özellikle Görselleştirici, Birleştirme, kod hariç tutma gibi ek özelliklere ihtiyaç duyulmuyorsa.
- Araç kullanıcı dostudur ve kullanımı basittir.
- Raporlar çok açık ve anlaşılması kolaydır.
- Yürütme hızı çok hızlı.
- Birleştirme özelliği o kadar iyi değil.
En son sürüm: Mart 2018'deki Sürüm 8.14
# 7) EMMA
Emma, Java yazılımının kod kapsamını ölçmesi için çok popüler bir açık kaynaklı araçtır. Vlad Roubtsov tarafından geliştirilmiştir. Sınıf, hat, yöntem vb. Tüm kapsam türlerini kapsar.

Ana Özellikler:
- Java yazılımı için% 100'dür.
- Özel özelliği, büyük ölçekli kurumsal gelişimi desteklemesidir.
- Bu araç, diğer ücretsiz teminat araçlarına kıyasla pazarda büyük bir paya sahiptir.
- Raporlar XML, HTML ve Düz metin biçiminde mevcuttur.
Lisans türü: CPL - Ortak Kamu Lisansı v1.0.
Resmi URL: EMMA
Lehte ve aleyhte olanlar:
- Bu, çok iyi hıza sahip ücretsiz bir araçtır.
- Kullanımı oldukça kolaydır ve kod kapsamının tüm kriterlerini kapsar.
- Java yazılımında kullanımı sınırlıdır.
- ANT'yi destekler.
- Sınıf enstrümantasyonunu destekler ve çevrimdışı veya anında çalıştırılabilir.
- En büyük dezavantajı, Java'nın en son sürümünü desteklememesi ve iyi korunmamasıdır.
En son sürüm: Emma-2.0.5320
# 8) OpenCover
OpenCover, .Net yazılımının kod kapsamı için açık kaynaklı bir araçtır. .Net 2 ve üstü için iyi çalışıyor. .Net yazılımının kod kapsamı için PartCover aracını kullanırken karşılaşılan sorunların üstesinden gelmek için geliştirilmiştir.



Ana Özellikler:
- Tüm .Net 2 ve üzeri yazılımlar içindir.
- NuGet paketi, MSI veya ZIP dosyası ile kurulabilir.
- .Net 4 ve .Net 2 için 64 ve 32 bit destek verir.
- Basit kod kapsama süreci sağlar.
- Ayrıca, PartCover'dan daha iyi Jenerik kullanımı sağlar.
- Bir komut satırı aracıdır.
- Raporları, grafik raporlar üretmek için kullanılan bir XML çıktı dosyası olarak verir. Bu, Rapor oluşturucu aracının desteğiyle yapılır.
Lisans türü: MIT Lisansı
Resmi URL: Açık kapak
Lehte ve aleyhte olanlar:
- Kod kapsam testi için ücretsiz bir araçtır.
- PartCover'dan birkaç yönden daha iyidir.
- OpenCover'ı kurarken çok yararlı belgeler sağlar.
En son sürüm: OpenCover 4.6.519 8 Şub 2016'da
# 9) NCover
NCover, Peter Waldschmidt tarafından .Net platformu için geliştirilmiş en iyi kod kapsama aracıdır. Tamamen açık kaynaklı bir araç değildir. Yalnızca Beta sürümü ücretsiz olarak kullanılabilir. Tam bir NCover 3 için 480 dolara mal oluyor.



Ana Özellikler:
- NCover aracı yalnızca .Net platformu içindir.
- Bu, beyan ve şube kapsamını kapsar.
- Bu araç kodu, arkasında özel olanı kullanarak analiz eder.
- NCoverExplorer aracı, kapsam analizi ile kaynak koduna göz atmak için kullanılabilir.
- Raporlar, HTML formatının ölçülerinde sunulur.
Lisans türü: Yüzer Lisans
Resmi URL: NCover
Lehte ve aleyhte olanlar:
- .Net yazılımı için en iyi kod kapsama aracıdır.
- Yalnızca Beta sürümü ücretsizdir. Aksi takdirde, bu aracı kullanmak yüksek maliyetlidir.
- 4 yıllık vadeye sahiptir ve çok hızlı bir araçtır.
- Destek çok aktif ve bazı yeni düzeltmeler ve özelliklerle sürümleri güncellemeye devam ediyor.
- Bu araçla kod kapsamı verilerini oluşturmak çok kolaydır.
- Hem manuel hem de otomatik kod kapsamı testleri için iyidir.
En son sürüm: Eylül 2017'de NCOVER V5.5.3706.979
# 10) COCO'yu ezin
COCO, froglogic tarafından sunulan bir çapraz platform ve çapraz derleyici çoklu dil kod kapsama aracıdır.
COCO tarafından desteklenen diller arasında C ++, C, C #, Sistem C, Tcl ve QML bulunur. Raporlar HTML, XML, Text, JUnit ve Cobertura gibi farklı formatlarda mevcuttur. Takım maliyeti FROGLOGIC tarafından açıklanmamaktadır. Ancak satın alınan lisans 1 yıl süreyle geçerli olacaktır.
Daha fazla ayrıntı için, desteğe başvurmanız gerekir. Deneme sürümü, demo, eğitim parçaları ve çevrimiçi destek mevcuttur ancak satın alınan lisans temelinde sınırlamalar vardır.

Ana Özellikler:
- Bir çapraz platform ve çapraz derleyici kod kapsama aracıdır.
- Kaynak kodunu ölçer.
- Farklı yapılar, testler ve CI çerçeveleriyle entegre edilebilir.
- Daha iyi analiz için raporları birleştirme özelliği mevcuttur.
Lisans türü: Kurbağa mantık Lisansı - Yüzer Lisans.
Resmi URL: Squish COCO
Lehte ve aleyhte olanlar:
- C ++, C, C #, System C, Tcl ve QML gibi bir dilde birden çok proje türünü destekler.
- Deneme sürümü piyasada sınırlı olarak mevcuttur.
- Her lisans bir yıllık destek ve güncellemeleri içerir.
- İşlemi kolaylaştırır.
- İfade, dallar ve koşullar gibi kriterleri kapsar.
- Kullanıcı farklı bir rapor biçimi seçebilir.
- Gereksiz testleri ve ulaşılamayan veya ölü kodu bulur.
En son sürüm: 2017'de Sürüm 4.0
# 11) Kapsama Ölçer
CoverageMeter aracı, C / C ++ uygulamaları için en yaygın kullanılan kod kapsamı araç zinciridir. En son sürümü 1.4 sürümüdür. Test edilmemiş kaynak kodunu bulmaya yardımcı olur. CoverageBrowser ve CoverageScanner olmak üzere iki alt araç içerir.
CoverageScanner bir komut satırı aracı olarak çalışır ve derleyicinin yerini alır. Piyasada kullanılan derleyicilerin çoğuna uyarlanmıştır. CoverageBrowser, nihai raporları analiz etmek ve yönetmek için kullanılan bir grafik arabirim olarak çalışır. Yürütmeden sonra, nihai rapor CoverageBrowser'da analiz edilebilir ve yönetilebilir.
Ana Özellikler:
- Araç esas olarak iki kısımda çalışır, yani CoverageScanner ve CoverageBorwser.
- Ayrıca iki küçük ücretsiz araçla birlikte gelir - Yürütme aracısı ve isteğe bağlı Visual Studio 2005 ve 2008.
- Yalnızca C ve C ++ tabanlı uygulamalar için kullanılabilir.
- Maliyeti yaklaşık 115,00 dolar. Bununla birlikte, deneme sürümü de piyasada mevcuttur.
Lisans türü: Shareware
Resmi URL: Kapsam Ölçer
Lehte ve aleyhte olanlar:
- Ücretsiz denemesi piyasada mevcuttur.
- Yalnızca C ve C ++ programı ile sınırlıdır.
- İşlevsel, ifade, koşul, yol vb. Gibi kod kapsamının tüm kriterlerini kapsar.
En son sürüm: Sürüm 1.4
# 12) GCT
GCT, Generic Coverage Tool, Brain Marick tarafından C için ücretsiz bir kod kapsama aracıdır. Dalları, döngüleri ve ilişkisel operatör kapsamını ölçer. Araç C kaynak kodunu alır ve ardından enstrümantasyon yapar ve sistem C derleyicisini kullanarak nesneyi üretir. Gerçek bir derleyici gibi başka bir şekilde, enstrümantasyondan sonra C derleyicisini çağırır.
Ana Özellikler:
- C programları için iyidir.
- En son sürümde, iyi bir derleyici olarak davranır.
- Dalları, çoklu koşulları, sınır koşullarını ve döngüleri kapsar.
Lisans türü: GNU - Genel Kamu Lisansı.
Resmi URL: GCT
Lehte ve aleyhte olanlar:
c ++ 'da basit ikili ağaç programı
- Açık kaynaklıdır ve güçlü raporlama sistemi ile kullanımı kolaydır.
- Araç yalnızca UNIX üzerinde çalışır.
- Alet büyüktür ve kurulumda birçok parçaya sahiptir. Bu, kabaca 33000 1k blok gerektirir.
- Esnek raporlama araçlarına sahiptir.
En son sürüm: GCT 1.4
# 13) TCAT C / C ++
TCAT, C, C ++ ve JAVA'yı analiz etmek için bir kod kapsama aracıdır. 2.1 sürümü, NT 4.x ve Windows 95 için iyi çalışır. TCAT'ın kiti, enstrümantasyonlu motor, çalışma zamanı birimi ve grafik odaklı analizörden oluşur. Gerçek maliyet ve sınırlamaları bulmak için onlarla iletişime geçmeli veya bir e-posta göndermelisiniz.
Ana Özellikler:
- Dalları, işlevleri ve çağrı çifti kod kapsamını analiz eder.
- C, C ++ ve Java için çalışır.
- Kapsam raporlamasının üzerine gelin ve tıklayın yöntemi, aracın kullanımını kolaylaştırır.
- Kullanıcılara yardımcı olmak için eksiksiz kullanıcı belgelerinin ve güçlü görselleştirme yazılımının kullanılabilirliği.
- Lisans anahtarı gerektirmeyen bir Demo sürümü vardır, oysa tam sürüm bir lisans anahtarı gerektirir.
Lisans türü: Standart değişken lisans yöneticisi (flexlm)
Resmi URL: TCAT C / C ++
Lehte ve aleyhte olanlar:
- C, C ++ ve JAVA ile sınırlıdır.
- Kapasite sorunları olmadan büyük ve karmaşık projeleri kolayca yönetir.
- Çağrı ağacından ve digraflardan iyi bir program anlayışı.
- Minimum hesaplamalarla çok güvenilirdir ve geliştiricilerin ve test uzmanlarının kullanımı için tamamen eksiksizdir.
- Demo versiyonu sadece 10 günlük bir süre için mevcuttur ve bu da bazı kısıtlamalara tabidir.
- Lisansın maliyeti açıklanmamaktadır.
En son sürüm: TCAT C / C ++, Sür.3.2.
# 14) Gretel
Gretel, Oregon Üniversitesi'nden Carls Howells tarafından Java programı için ücretsiz bir kod kapsama aracıdır. Gretel JVM 1.3 veya üzerini kurmak için BCEL (Byte Code Engineering Library) gereklidir.
Ana Özellikler:
- Java programı için ifade kapsamını destekler.
- Programı yeniden düzenleyerek ve cihazı halihazırda yürütülen koddan çıkararak kalan test kapsamına da yardımcı olur.
- Bir komut satırında veya GUI'de başlatılabilir.
- Raporlar GUI'de mevcuttur.
Lisans türü: BSD
Resmi URL: Gretel
Lehte ve aleyhte olanlar:
- Açık kaynak kodlu bir araçtır.
- JUnit ile uyumlu değildir.
En son sürüm: Haziran 2002'de 1.0rc2 sürümü.
# 15) JCov
Jcov, açık kaynak kodlu bir Java kodu kapsama aracıdır. SUN JDK ile geliştirilmiş ve uygulanmıştır. Java bayt kodunu Statik enstrümantasyon ve dinamik enstrümantasyon olmak üzere iki şekilde enstrümantasyon yaparak çalışır.
Ana Özellikler:
- Araç, Java projeleri için iyidir.
- Blok, hat, şube ve yöntem kapsamını raporlar.
- Toplanan verileri dosya sistemine veya bir sunucuya kaydedebilir.
- Java bayt kodunu ölçer.
- Hem anında hem de çevrimdışı olarak enstrümantasyon yapabilir.
Lisans türü: LPG V2
Resmi URL: JCov
Lehte ve aleyhte olanlar:
- Açık kaynak kodlu bir kapsama aracıdır.
- Yalnızca Java projeleriyle sınırlıdır.
- Kod kapsamının neredeyse tüm kriterlerini kapsar.
En son sürüm: 2014'te JCov Sürüm 3.
Sonuç
Standart bir test kalitesini sürdürmek için kod kapsamını kullanmak, kodun mümkün olduğunca test takımları çalıştırılırken yürütüldüğünden emin olmak için ek test senaryoları dahil etmek. Bu gerçekten etkili regresyon testi için oldukça faydalıdır.
Kod kapsama araçları, yalnızca testleri çalıştırırken kapsanan kodu ölçmek için kullanılır.
% 100 kod kapsamı bulmak çok nadirdir ve% 100 kod kapsamı bile% 100 kalite testini kanıtlamaz. Bazı önemli test durumlarını kaçırırken% 100 kod kapsamına ulaşabilirsiniz. Daha iyi bir etkili test seviyesi elde etmek için, normal kod kapsamı yerine Mutasyon Testine gitmelisiniz.
******************
= >> Bize Ulaşın burada bir liste önermek için.
******************
Önerilen Kaynaklar
- En İyi Yazılım Test Araçları 2021 (QA Test Otomasyon Araçları)
- Geliştirme, Derleme, Profil Oluşturucu, Kod Kapsamı ve İnceleme için 15 En İyi JAVA Araçları
- EN İYİ 40 Statik Kod Analiz Araçları (En İyi Kaynak Kodu Analiz Araçları)
- Geliştiriciler ve Test Edenler İçin En Popüler 10 Kod İnceleme Aracı
- Java Dağıtımı: Java JAR Dosyasının Oluşturulması ve Yürütülmesi
- Java Sanal Makinesi: JVM, Java Uygulamasını Çalıştırmada Nasıl Yardımcı Olur?
- Java'da Erişim Değiştiriciler - Örneklerle Eğitim
- Örneklerle Java Yansıtma Eğitimi