Blok diyagramları, sistem testlerini planlamak ve yürütmek için en pratik araçlardan biridir.Açık, bir sistemin bileşenleri ve etkileşimlerinin görsel haritası sunmakla, bu diyagramlar kritik test puanlarını belirlemelerine yardımcı olur, tasarım odaklı test vakaları ve karmaşık mimarileri kolayca iletişim kurun.Eğer gömülü donanım, yazılım, veya karma bir sistem sunarak blok diyagramları, tahmin eden ve test kapsamını azaltan bir yapı sağlar.
Sistem Testinde Bir Blok Diagram Nedir?
Bir blok diyagramı, bir sistemin basitleştirilmiş grafik gösterimidir. Temel bileşenleri temsil etmek için dikdörtgen bloklar kullanır - donanım modülleri, yazılım işlevleri veya veri depoları gibi - ve oklar veya hatların veri akışını göstermek için, kontrol sinyalleri veya kaynak kodlarından farklı olarak, blok diyagramları daha yüksek bir soyutlama seviyesinde çalışır, bunları test planlama için ideal hale getirirler çünkü hangi konuları vurgular: ilişkiler ve sistem davranışını belirleyen bağımlılıklara bağlıdır.
Sistem testinde, blok diyagramı canlı bir sanattır. Sistemin test altında mavi bir baskı olarak başlar ve takım yeni arayüzler, başarısızlık modları veya entegrasyon noktaları keşfeder. diagramın kendisi son ürün değildir; test tasarımını, risk analizini ve kapsamı değerlendirmesini sağlayan bir araçtır.
Blok Diagramları Sistem Test Planlaması İçin Temeldir
1. Kompleksiyetini görselleştirmek
Orta büyüklükteki sistemler bile onlarca geçici modüle sahip olabilir. Bir diyagram olmadan, testçiler hafızadaki tüm bağlantıları tutmalıdır, bu da denetimlere yol açar. Bir blok diyagramı bu karmaşıklığı bir görüşe dönüştürür, hangi bileşenlerin hangisine bağlı olduğunu ortaya çıkarır ve kritik işlevleri taşır.
2. Takımlar arasında iletişim geliştirmek
Geliştiriciler, testçiler, ürün sahipleri ve paydaşları her zaman aynı blok diyagramını görürler, sınırları ve arayüzleri hakkında yanlış anlamalar sağlar. diagram, özellikle takımların farklı mühendislik disiplinlerinden (hardware, Software, software) faydalandığı zaman paylaşılan bir dil olarak hizmet eder.
3. Test Noktaları ve Interfaces Tanımlama
Bir blok diyagramında her ok potansiyel bir test noktası temsil eder. Her bağlantıyı inceleyerek, bir testçi arayüzü doğrudan test edip, ters tarafı mı simüle etmeye veya veri akışını izlemek için karar verebilir.Bu sistematik yaklaşım, sezgi veya kontrol listelerine güvenmekten çok daha güvenilirdir.
4. Riske Dayalı Test
Blok diyagramları yüksek riskli alanları belirlemek için kolay hale getirir: birçok gelen veya giden bağlantı, bu işlem güvenliği kritik verileri işleyen bileşenler veya yeni tasarlanan modüller.Testler, bu modüllere daha fazla çaba ayırabilir ve test kaynaklarının dağıtımını haklı çıkarabilir.
Testlerde kullanılan Blok Diagramları
Fonksiyonel Blok Diagrams
Bu, her modülün yaptığı işlevleri veya süreçleri odaklanır. Her blokun bir hizmet, mikro hizmet veya algoritmayı temsil ettiği yazılım sistemleri için idealdir. hatların faaliyetlerin veya veri işlevleri arasındaki akışı gösterir.
Fiziksel Blok Diagrams
Temel olarak donanım ve gömülü sistemlerde kullanılır, fiziksel blok diyagramları, sensörler, aksiyoncular, işlemciler ve hafıza cipsleri. Bağlantılar fiziksel telleri, otobüsleri veya kablosuz bağlantıları temsil eder.Bu tip testlere yardımcı olur planlama donanım-in-loop testleri ve entegrasyon kontrolleri.
Hybrid Block Diagrams
Birçok gerçek dünya sistemi donanım ve yazılımı birleştirir. Bir hibrit blok diyagramı aynı tuvaldeki donanım ve yazılım bloklarının yanı sıra, iki etiketi ayırt eden açık etiketlerle yer alır. Bu, özellikle de başarısızlıkların her iki tarafta da kaynaklanabileceği sistem seviyesindeki test için değerlidir.
Sistem Test için Etkili Bir Blok Diagram Nasıl Oluşturulur
Test için bir blok diyagramı oluşturmak, geliştiriciler için bir mimari diyagramı çizerek aynı değildir. Tester'in diyagramı test edilebilirlik endişelerini, arayüz ayrıntıları ve hata yayılım yollarını vurgulamak zorundadır.Bu adım adım adım adım adım adım adım adım adım süreci takip edin.
Adım 1: Gather System Dokümantasyon
Gereksinimlerle başlayın, mimarlık özellikleri, arayüz kontrol belgeleri (ICDs), ve mevcut diyagramlar. Belgeler sparse, röportaj geliştiricileri ve alan uzmanları. Tüm önemli modülleri, rollerini ve dış arabirimlerini tanımlamak için yeterince bilgi toplayın - hem diğer modüllere hem de dış dünyaya.
2. Adım: Sistemi Tanımlayın
Tüm sistem etrafında dotulmuş veya dazenmiş bir çizgi çizin. Sınırın içindeki her şey test altında sistemdir (kullanıcılar, diğer sistemler, fiziksel kuvvetler). Bu sınır testlerden sorumlu olduğunuzu ve ne tür bir simülasyon veya soruşturmanız gerektiğini açıklayın.
3. Adım: Blokları Liste ve Yeri
Her büyük bileşen için bir blok oluşturun. Her bir blok kısa, tanımlayıcı bir isim verin (örneğin, “Kullanıcı Kimlik Servisi”, “Mühendislik Kontrol Birimi”, “Data Logger”) Blokları mantıksal bir düzende ayarlama - genellikle kontrol hiyerarşisi için üst düzey sol üst düzeye çıkarın.
Adım 4: Bağlantılar ve Data Flows
Veri, sinyallerin veya kontrol yönünü göstermek için ok kullanın. Her bir paketle test türü ile etiketleyin (örneğin, “JSON ödeme yükü” veya “I2C 400 kHz.
Adım 5: Test Altyapısı Placeholders
Test için bloklar, simülatörler veya test sırasında kullanılacak olan araçları takip edin. Örneğin, önceden tanımlanmış girişleri sisteme ve "Data Analyzer" blokunu kullanan bir statik mimariye dönüştürme.Bu, diyagramı dinamik bir test planına dönüştürür.
Adım 6: Test niyeti ile bir not
Her blok veya bağlantıda, testlerin ilgili olduğu hakkında kısa notlar yaz: "Validate hata işlemi sunucu 503 döndüğünde,"Check zamanlama: yanıt < 10 ms" "Verify CRC alınan paketler üzerinde." Bu annotasyonlar, herhangi bir test yürütme başlamadan önce incelenen canlı bir test özelliklerine dönüşür.
Test sırasında Blok Diagrams Kullanımı
diagram oluşturulduktan sonra, günlük test için bir referans haline gelir. İşte onu kullanmak için somut yollar.
Test Vakalarını Patlara dayanarak seçin
Bir giriş blokundan orta modüllerden bir çıkış blokuna bir yol izleyin. Her yol, normal akışları, hata akışlarını ve aşırı senaryoları kapsayan bir dizi test senaryolarına karşılık gelir.
Takip Takip
Blok diyagramını yazdırın ve her bloku işaretleyin ve bir kez testin bu alıştırmaları gerçekleştirdiğini bir kez işaretlemek oldu.Bu görsel kapsama haritası hızla test edilmemiş alanları gösterir. Birçok takım renkli kodlama kullanır: test edilen için sarı, kısmen test edilmiş için kırmızı, test edilmemiş ilerlemeyi bildirmek kolaylaşır.
Debugging Başarısızlıkları
Bir test başarısız olduğunda, blok diyagramı başarısızlığı izole etmeye yardımcı olur.Her bir bloktan geçen verileri ve testçiler, kusurların nerede kaldığının hipoterasyonunu ayırt edebilir. Örneğin, bir çıkış bloğu doğru verileri gösterirse, bir sonraki blok süreçleri doğru bir şekilde, bu blokta muhtemelen yalan söylüyor veya bu blok işleme mantığında.
Regresyon Analizi
Sisteme bir değişiklik yapıldığında, blok diyagramı hangi modüllerin etkilendiğini gösteriyor. Sadece bir blok değiştirilmişse, bu blokun yenidengresyon test edilmesi ve terk edilmesi gereken bağlantıların değiştirilmesi gerekiyor.Bir bağlantı değiştirilmişse, tüm alt uç bloklar bu verilerin etkilenebilir.
Sistem Testinde Blok Diagramlarının Gerçek Dünya Örnekleri
Örnek 1: Gömülü Sensör Ağı
Bir şirket endüstriyel izleme için kablosuz sıcaklık sensörü ağı inşa eder. Blok diyagramı sensör düğümleri, bir ağ geçidi, bir bulut sunucusu ve bir paniğe sahiptir. Sistem testinde, ekip, veri toplama, bütünleme kontrolü, batarya yaşamı izleme ve başarısız olduğunda, otomatik bir başarısızlık noktası ortaya çıkarır: Ekstra ağ geçidi. Ekstra testler otomatik rekontasyon için eklenir.
Örnek 2: Mikroservices-Based E-Ticaret Platformu
Bir e-ticaret platformu 15 mikro hizmete sahiptir: ürün kataloğu, kart, çekout, ödeme, envanter, nakliye vs. Blok diyagramı, API ağ geçidini ön ve her hizmette veritabanı ve mesaj kuyrukları ile gösterir.Test ekibi, kontrol yolunu kapsar: bir testçi kontrol altına almak için diyagram kullanır.
Örnek 3: Otomotiv Bilgi Sistemi
Bir otomotiv bilgi sistemi bir dokunmatik ekran görüntüsü, bir DSP yükseltici, bir GPS alıcı, Bluetooth ve bir kontrol alanı ağı (CAN) otobüs arayüzü. Blok diyagramı, test ekibi plan sistemini her iki DSP ve kanal ile etkileşim için testlere yardımcı olur. Ayrıca, bu kanalları paylaşılan bir kaynak olarak da özetler.
Sistem Testlerinde Blok Diagrams için En İyi Uygulamalar
Detayların Düzeyini Keep the Level of Information Consistent
Hangi bileşenleri kendi bloklarını alıp hangi gruplandırılmış olduğunu karar verin. Çok iyi bir granulariteyi karıştırmayın (örneğin, bireysel fonksiyonlar) çok koarse granularity (e.g., tüm altsystems) açık bir sebep olmadan. Sistem blok diyagramı tipik olarak bağımsız olarak bağımsız olarak, izolasyonda test edilebilir birimlerde test edilebilir birimler -.
Standart Notation Kullanımı
Örneğin, yazılım için retangüller, veri kaynakları veya lavabolar için elmaslar ve veri akışı için oklar.Spekte bir efsaneyi kendi başına yazmaksızın okuyabiliyor.
Diagram'ı Sürekli Olarak Güncelleme
Blok diyagramları tek zamanlı teslimatlar değildir. Sistem geliştikçe, diyagramı günceller. Outdated diagramlar yanlış testçiler ve erode güven. Bir diyagram sahibi olarak - genellikle test mimarı veya liderlik - kim mevcut tutmaktan sorumludur.
Test Yönetimi Araçları ile bütünleştir
Birçok test yönetimi araçları, test vakalarını bir diyagramda bloklara veya bağlantılara bağlamaya izin verir. Bu, diyagram değişiklikleri yaparken etki analizi yürütmek kolaylaşır.For team using model tabanlı test, the block diagram can serve as the input for otomatik test nesli.
Common Pitfalls Kaçmak için
Diagram'ı aşırılaştırmak
Her kaydı göstermeye çalışan bir blok diyagramı, işlev çağrısı ve tel artık bir blok diyagramı değil - bir blok diyagramı haline gelir. Bir blok diyagramı amacı soyutlanırsa, diyagramı çok sayıda katmana bölünür: alt sistemler için üst düzey bir bağlam diyagramı ve birkaç ayrıntılı blok diyagramı.
Oan Interfaces to the Environment
Test stimuli'nin nereden geldiğini veya hangi çıktıların "Environment" veya "Dış Sistemleri" için bir blok içerdiğini ve sistem sınırının arasındaki bağlantıların nerede olduğunu göstermediğini bazen unutmayın.
Data Semantics olmadan Bağlantılar
İki blok arasında bir çizgi yeterli değildir. Veri, protokol veya zamanlama türü etiketlemeden, diyagram test tasarımı için değerini kaybeder. "data" neredeyse işe yaramaz; "JSON mesajları HTTPS, avg 50 istek / güvenlik, max latency 200ms" diyor bir satır.
Diagram Kullanımı Sadece Planlama için
Bazı takımlar test tasarım aşamasında güzel bir blok diyagramı oluşturur ve sonra onu dosyalayın, bug triage ve raporlama sırasında diyagramı kullanmaktan gelir. görünür tutun - bir duvarda, paylaşılan bir klasörde veya test yönetimi aracında gömülü.
Blok Diagrams oluşturmak için araçlar
Birkaç araç blok diyagramları oluşturmanıza ve sürdürmenize yardımcı olabilir. Kolay paylaşım ve sürümleme destekleyen birini seçin.
- [FONT=0)Draw.io (diagrams.net): ), Free, web tabanlı, Google Drive, Confluence ile entegre edilir ve GoHub. İşbirliği düzenleme için mükemmel bir şekilde kullanılabilir.[[DDD:2Downgram bağlantı:)).
- [FONT:0)Lucidchart:[Dönem: [Dönder: · 1] Ücretli, profesyonel sınıf, ağ için yerleşik form kütüphaneleri, yazılım ve mühendislik için iyi.Daha büyük takımlar için iyi.[D:2)Dış bağlantı: Lucidchart).
- [FONT:0)PlantUML:[Dönetici: 0,4|Dönetici: 0)Exp|Dönergeler için ideal|seçmişler için uygun.[Dönemli:0)Exp:0|[Döner:|Dönergeler|Döncükler|Dönergeler|Döncükler|Döncükler için ideal|Döncüment|Döncüment|Döncüment|Döncüler|Döncüment|Döncüler|Döncükler|Döncükler)
- [FONT:0) Microsoft Visio:[Dönetici: Geleneksel diagramming aracı, yaygın olarak kurumsal ortamlarda kullanılır, ancak web tabanlı alternatiflerden daha az işbirliği.
Etkililik Testinde Blok Diagramlarının Etkisini Ölçmek
Blok diyagramlarını kabul eden takımlar sürekli olarak ölçülebilir gelişmeler görür. Common metrics, blok tabanlı bir test yaklaşımına geçişten sonra daha yüksek gereklilikleri (her bloklama) kapsamaz ve daha hızlı başarısız izolasyonu uygular.In one case study, a team lower bug by% 40 after switch to a block-diagram tabanlı test yaklaşımına geçişten sonra.
Blok diyagramlarını henüz kullanmıyorsanız, küçük bir alt sistem deneyin baş ağrısına neden olan bir alt sistem seçin, blok diyagramını çizin ve bunun üzerine kurulu bir sonraki test turunu tasarlayabilirsiniz.
Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç
Blok diyagramları sadece mimarlar ve tasarımcılar için değil - sistem testcileri için pratik, günlük araçlardır.Test iş akışınıza açık bir bakış açısı, arayüzler ve veri akışları, kaosu yapı haline getirirler. Hem kapsamlı hem de verimli olan testleri planlamanıza yardımcı olurlar, sistem değişiklikleri olmadan bulguları iletişim kurarlar.Test iş akışlarına entegre etmek ve test akışınıza olan tüm blok diyagramları test akışınıza zorlayarak, test büyüme altındaki sisteme olan güveninizi izlemek için.