Blockchain Test Eğitimi

Blockchain nedir?

Blockchain, blok adı verilen, sürekli büyüyen kayıt listesi paylaşılan bir veritabanı deposudur. Her blok, önceki bloğun bir karmasını ve bir zaman damgasını içerir.

Bu eğitimde şunları öğreneceksiniz:

  • Blockchain nedir?
  • Blockchain'in özellikleri şunları içerir:
  • Blockchain Türü
  • Bir blok zincirinin Ana Bileşenleri
  • Blockchain'in Avantajları
  • Blockchain Testindeki Zorluklar
  • Blockchain Testinin Aşamaları 7
  • Blockchain Uygulamasında Temel Test Türleri 10
  • Blockchain Test Araçları 10

Blockchain'in özellikleri şunları içerir:

  • Merkezi Olmayan Sistem : Finans, gayrimenkul vb. Gibi Çeşitli Sektörlerde Faydalıdır.
  • Daha İyi Güvenlik : İşlemleri tamamlamak ve doğrulamak için birden çok düğüm kullanır
  • Özgünlük : Benzersiz algoritmanın verileri işlemesine izin verir
  • Artan Kapasite : Tüm Ağın kapasitesini artırır

Blockchain Türü

İşte üç tür Blockchain:

Konsorsiyum Blok Zinciri:

Birden çok kuruluşun Ağ üzerinden erişimi ve yetkisi olacaktır. Tamamen merkezi olmayan bir sistem

Herkese Açık Blockchain:

Bu tip blok zinciri testinde, herkesin Ağa erişimi vardır ve Konsensüs'e katılabilir. Merkezi Olmayan Sistemi.

Özel Blockchain:

Yalnızca Tek kuruluşların Ağ üzerinden erişimi ve yetkisi olacaktır. Kısmen merkezi olmayan bir sistem.

halka açık Özel Konsorsiyum
Giriş
  • Kimse
  • Tek kuruluş
  • Çoklu organizasyon
Katılımcılar
  • İzinsiz
  • Anonim
  • İzin verildi
  • Bilinen Kimlikler
  • İzin verildi
  • Bilinen Kimlikler
Güvenlik
  • Konsensüs Mekanizması
  • İş Kanıtı / Yığın Kanıtı
  • Önceden onaylanmış katılımcılar
  • Oylama / çok taraflı Konsensüs
  • Önceden onaylanmış katılımcılar
  • Oylama / çok taraflı Konsensüs
İşlem Hızı
  • Yavaş
  • Daha Hafif ve Daha Hızlı
  • Daha Hafif ve Daha Hızlı

Bir blok zincirinin Ana Bileşenleri

Düğüm Uygulaması

Her Düğüm, katılmak istediği ekosisteme özgü bir bilgisayar uygulaması kurmalı ve çalıştırmalıdır

Paylaşılan Defter

Düğüm uygulamasının içinde bir veri yapısı (defter) yönetilir. Ekosistem içeriği, düğüm uygulaması çalışır durumdayken görüntülenebilir.

Konsensüs Algoritması

Mutabakat algoritması, düğüm uygulamasının bir parçası olarak uygulanır ve ekosistemin defterin tek bir görünümüne nasıl ulaşacağına ilişkin 'oyunun kuralları' sağlar.

Sanal makine

Talimatlarla çalıştırılan ve ekosistemdeki her katılımcının çalıştırdığı düğüm uygulamasının bir parçası olarak uygulanan bir makinenin soyutlanması.

Blockchain Nasıl Çalışır?

Blockchain'in Avantajları

  • Zaman Tasarrufu : Blockchain, işlem süresini günlerden dakikalara indirir. İşlem çözümü, merkezi bir otorite tarafından doğrulama talep etmediği için daha hızlıdır.
  • Uygun Maliyetli : Blockchain İşlemleri daha az işlenir. Katılımcılar doğrudan değerli eşyalar alışverişinde bulunabilirler. Blockchain, katılımcılar paylaşılan bir deftere erişebildiği için tekrarlanan çabayı ortadan kaldırır.
  • Güvenliği Artırın : Blockchain'in dolandırıcılığa ve siber suçlara karşı güvenlik koruması.

Blockchain Testindeki Zorluklar

  • Teknolojiyi Anlamak - Blockchain yeni bir teknolojidir ve alan bilgisiyle teknolojiyi anlamak, Blockchain Uygulamasını test etmede çok önemlidir.
  • Blockchain Test Araçlarının Eksikliği - Blockchain tabanlı uygulama testi tamamen araçlarla ilgilidir. Uygulamaya göre doğru aracı seçmek önemli kararlardan biridir.
  • Test Stratejisini Tanımlama - Herhangi bir uygulama gibi, Blockchain uygulaması için Test Stratejisi tasarlama. Test Stratejisi, teknoloji ve uygulama hakkında derinlemesine bilgi ve anlayış gerektirdiği için en büyük zorluklardan biridir.
  • Blok ve Zincir Boyutu - Standart Test, araçlar ve yerinde en iyi uygulamaların yanı sıra, blok boyutu ve zincir boyutu için test yapmak da önemlidir. Blok zinciri uygulamaları, blok boyutu ve zincir boyutu doğru bir şekilde doğrulanmadan başarısız olabilir.
  • Entegrasyon Testi - Blockchain uygulamasında birden fazla bileşen bulunduğundan, herhangi bir arızayı önlemek için tüm bileşenlerin uygun şekilde entegre edildiğini test etmek için entegrasyon testi uygun ve sık sık yapılmalıdır.
  • Performans ve Yük - Performans ve yük testini test etmede başarısız olmak, Blockchain uygulamasının hem üretimde hem de belirli iş yükleri ve ağ koşullarında nasıl performans gösterdiğine dair çok az fikir verir veya hiç bilgi vermez.
  • Güvenlik - Verilerin güvenliğini sağlamak, Blockchain Uygulamasında en önemli şey olmalıdır. Blockchain, Sağlık, finans vb. Gibi çeşitli sektörlerin bir parçası olabilir. Her türlü kötü niyetli saldırı, Blockchain uygulamasını etkileyebilir.

Blockchain Testinin Aşamaları

Başlangıç ​​Aşaması:

  • Blockchain Mimarisini Anlamak : Bu aşamada, İş ve işlevsel gereksinimleri anlıyor ve analiz ediyoruz. Bu, uygulamanın davranışını ve kullanıcının uygulamayla nasıl etkileşime gireceğini açıklar
  • Tam Test Stratejisi Tasarımı : Bu aşamada, bir uygulamayı test etmek için test yaklaşımını açıklıyoruz. Bu, her hedefin tam olarak kapsanması için ayrıntılı olarak yapılmalıdır.

Tasarım aşaması:

  • Test Vakası Oluşturma : Bu aşamada, QA ekibi test olaylarını uygun adımlarla yazar. Bu Test durumları Business Analyst (BA) tarafından incelenir.
  • Test Verisi Oluşturma : Bu aşamada, iş gereksinimlerine göre önceki ortamdan test verileri oluşturulur veya çıkarılır. Test verileri manuel olarak veya otomasyon araçları kullanılarak oluşturulabilir.
  • Ortam Kurulumu : Bu adımda, test ortamı İş veya uygulama ihtiyacı olarak yapılandırılır.
  • Performans Ölçütleri : Performans Ölçütleri, uygulamanın, Sistemin veya bileşenlerin performansı açısından bilgileri temsil eder

Test Aşaması:

  • API Testi : API testinde, blockchain ekosistemindeki uygulamalar arasındaki etkileşimin beklendiği gibi olmasını sağlıyoruz
  • Blok Testi : Doğru işbirliğini sağlamak için Ağdaki tüm bloklar ayrı ayrı test edilmelidir.
  • Fonksiyonel Test : Fonksiyonel Testte, Blockchain'in çeşitli fonksiyonel parçalarının (örneğin akıllı sözleşmeler) çalışmasını değerlendiriyoruz.
  • Performans Testi : Blok boyutuna, ağ boyutuna, beklenen işlem boyutuna ve bir sorgunun özel kimlik doğrulama protokolüyle çıktıyı döndürmesinin ne kadar sürdüğüne bağlı ağ gecikmesi gibi ayrıntılar
  • Güvenlik Testi : Bunda, uygulamanın saldırılara karşı savunmasız olmasını ve Sistemlerin verileri koruyabilmesini ve kötü niyetli saldırıları vb. Ele alabilmesini sağlıyoruz.
  • Entegrasyon Testi : Entegrasyon testinde, uygulamanın tüm bileşenlerinin doğru şekilde entegre edilmesini ve eylemlerin uygun şekilde gerçekleştirilmesini sağlıyoruz.
  • Akıllı Sözleşme Testi : Akıllı Sözleşme testi, iş mantığı ve sürecinin ayrıntılı işlevsel testini gerçekleştirmekle ilgilidir.

Rapor Aşaması:

  • Proje Özet Raporu : Proje ayrıntılarına, proje tarihlerine, maliyetine ve Görev Ayrıntılarına genel bakışı açıklayın
  • Akıllı Sözleşme Test Raporu : Bu rapor, Akıllı sözleşme, veriler ve kural işlemenin ayrıntılarını açıklar
  • Güvenlik Testi Raporu : İstemci ve üst yönetim için resmi bir belgede Hassas bilgileri gösterir. Rapor test tarihini, test verilerini ve bulunan güvenlik açıklarının özetini içerir
  • performans testi Raporu : Bu rapor, hız, ölçeklenebilirlik, güvenilirlik vb. gibi uygulamaların performansıyla ilgili ayrıntıları gösterir.

Blockchain Uygulamasında Temel Test Türleri

Fonksiyonel test

İşlevsel Test, iş gereksinimlerini, süreçlerini ve kullanım durumlarının etkinliğini değerlendirmeye yardımcı olduğu için Blockchain Testinde önemli bir rol oynar. Fonksiyonel Testin bir parçası olarak test edilebilecek bileşenler aşağıdadır: 1) Blok Boyutu ve Zincir Boyutu 2) Bir Blok Ekleme 3) Veri İletimi

Entegrasyon Testi

Blockchain uygulaması birden çok ortamda çalışır. Bu nedenle, sistemler arası bağlantıları test etmek önemlidir

Performans testi:

Donanım ve yazılım darboğazlarının önceden belirlenmesine yardımcı olur. Bu, uygulamayı bulutta veya diğer ortamlarda çalıştırmanın olası maliyetlerini anlamanıza da yardımcı olabilir.

Düğüm Testi

Sorunsuz bir işbirliği sağlamak için Ağdaki tüm farklı düğümler bağımsız olarak test edilmelidir.

API testi:

Uygulama Programlama Arayüzü, blok zinciri ekosistemindeki uygulamalar arasındaki etkileşimi test eder. API Testi, isteklerin ve yanıtların biçimlendirilmesini ve doğru şekilde çalıştırılmasını sağlar.

Blockchain Test Araçları

İşte bazı ithal Blockchain Test araçları:

1) Ethereum Test Cihazı:

GitHub deposunda bulunan açık kaynaklı bir test kitaplığıdır. Çeşitli Test gereksinimleri için yönetilebilir API desteği ile kurulumu kolaydır .

2) Ganache:

Daha önce olarak bilinir Testrpc , yerel Ethereum sözleşmeleri test etmek için yaygın olarak kullanılan kütüphanesidir. T esting için kullanabileceğiniz hesaplara erişmenizi sağlayan bir tür sahte B kilit zincirini döndürerek çalışır .

3) Hyperledger Besteci:

Hyperledger Composer, geliştiricilerin blok zinciri uygulamaları oluşturmalarına yardımcı olan açık kaynaklı bir araçtır. Bu aracı kullanarak, başlıca üç tür test gerçekleştirebiliriz: etkileşimli Test, otomatik birim ve Sistem testi.

Bu makale Suman Dass tarafından hazırlanmıştır.

Ilginç makaleler...