simple guide interoperability testing
Tekniğini anlamadan önce 'Birlikte Çalışabilirlik Testi' Önce 'Birlikte Çalışabilirlik' terimini anlayalım.
Birlikte çalışabilirlik, bir sistemin başka bir sistemle etkileşim kurma yeteneğidir. Bu etkileşim, 2 farklı sistem veya 2 farklı uygulama arasındadır.
web uygulaması sızma testi mülakat soruları
Çoğu zaman birlikte çalışabilirlik ile karıştırılır Entegrasyon , uyumluluk ve taşınabilirlik. Eh, bu teknikler arasında farklılıklar var.
Öncelikle farklılıkları açıklayarak başlayayım.
Entegrasyon - Aynı sistemin bileşenlerinin birbirleriyle etkileşime girdiği bir tekniktir. Bu yüzden test dünyasında, Entegrasyon testi yaptığımızda, aslında aynı sistemin en düşük seviyeli bileşenlerinin 2 veya daha fazlasının davranışını test ediyoruz.
Uyumluluk - Aynı ortamda 2 veya daha fazla uygulamanın etkileşim kurduğu bir tekniktir. Yani test dünyasında, Uyumluluk testi yaptığımızda; Aynı ortamda 2 veya daha fazla uygulama veya sistemin beklendiği gibi davrandığını doğrularız.
Buradaki amaç, iki sistemin aynı ortamda birbirlerinin çalışmasını engellemeden beklenen görevleri yerine getirip getirmediğini kontrol etmektir. Like - MS Word ve Hesap Makinesi 2 farklı uygulamadır ve beklenen davranışlarını aynı işletim sisteminde bağımsız olarak gerçekleştirirler. Yani bu 2 uygulamanın birbiriyle uyumlu olduğunu söylüyoruz.
Taşınabilirlik - Bir uygulama veya sistemin başka bir ortama taşındığında beklendiği gibi davrandığı bir tekniktir. Yani içinde Taşınabilirlik testi, uygulamayı başka bir ortama aktarır ve davranışını test ederiz. Örneğin, Windows XP'de iyi çalışan bir uygulama varsa, Windows 10'da da iyi çalışması gerekir.
Birlikte çalışabilirlik - Bir uygulamanın başka bir uygulama ile nasıl etkileşim kurduğu bir tekniktir. Dolayısıyla, Birlikte Çalışabilirlik testini yaptığımızda, 1 uygulamadan gelen verilerin önceden haber verilmeksizin başka bir uygulamaya nasıl aktarıldığını ve kabul edilen çıktıyı vermek için nasıl daha fazla işlendiğini kontrol ederiz.
Bu özel belge, Birlikte Çalışabilirlik testine (IOT) odaklanmaktadır, bu nedenle Birlikte Çalışabilirlik konusuna odaklanmaya devam edelim. :)
Ne öğreneceksin:
- Birlikte Çalışabilirlik Testi - Kısa bir giriş
- Birlikte çalışabilirlik testi nasıl yapılır?
- 5 ½ Adımlar:
- Zorluklar:
- Cep Telefonlarında Birlikte Çalışabilirlik Testi:
- Sonuç:
- Önerilen Kaynaklar
Birlikte Çalışabilirlik Testi - Kısa bir giriş
Birlikte çalışabilirlik = Birlikte + çalıştırılabilir
Inter - 'aramızda', 'birbirimizin içinde', 'karşılıklı' anlamına gelir
Çalıştırılabilir - 'verilen görevi yerine getirebilecek' anlamına gelir
Bu nedenle, 2 terimi bir araya getirmek - Birlikte çalışabilirlik, tahsis edilen görevleri bağımsız olarak gerçekleştirebilen ve ayrı ayrı atanmış işlevlerini etkilemeden beklendiği gibi birbirleriyle iletişim kurabilen 2 (veya daha fazla) sistem anlamına gelir.
Örnek 1:Uçuşunuzu rezerve etmek için bir örnek alın. Yeni Delhi'den New York'a seyahat etmeniz gerektiğini düşünün. Artık direkt uçuşunuz yok. Yeni Delhi'den Londra'ya seyahat etmeli ve ardından Londra'dan New York'a aktarmalı uçuş yapmalısınız. Zaman kısıtlamanız olduğu için, Yeni Delhi'den Londra'ya “Jet Airways” havayollarında ve Londra'dan New York'a “Virgin Atlantic” ile uçuşunuzu rezerve ediyorsunuz. Bu, tüm yolcu detaylarınızın Jet Airways'den Virgin Atlantic'e aktarıldığı anlamına gelir. Yani burada, Jet Airways ve Virgin Atlantic, hepsi bir arada bağımsız uygulamalardır ve uçuşunuzu rezerve ederken, rezervasyon detaylarınız Jet Airways'den Virgin Atlantic'e önceden haber verilmeksizin tam anlamıyla değiştirildi.
Örnek 2:Benzer şekilde, hasta kayıtlarının 1 departman arasında başka bir departmanla paylaşıldığı hastane yönetim sistemini düşünün. Yani burada departman bir uygulamaya bağlanabilir. Hastanın detayları önceden haber verilmeksizin 1 uygulama ile başka bir uygulama arasında değiş tokuş edilir.
Öyleyse neden IOT yapmamız gerekiyor?
Bunu sağlamak için Birlikte Çalışabilirlik testini yapmamız gerekir.
- Ağdaki uygulamalar beklenen davranışlarını bağımsız olarak gerçekleştirir,
- Önceden haber vermeksizin bilgi alışverişi yapabilir
- Bilgi / veri alış verişi bireysel beklenen davranışı kesintiye uğratmadan yapılır
- Değiştirilen veriler / bilgiler değiştirilmez veya değiştirilmez
Birlikte çalışabilirlik testi nasıl yapılır?
Birlikte çalışabilirlik testini gerçekleştirmek için Deeming çarkını (PDCA döngüsü) takip edebiliriz.
# 1) Plan
Planlama, yazılım geliştirmede neredeyse her şeyi yapma stratejisini belirlemenin en önemli aşamasıdır. Aslında IOT yapma prosedürünü belirlemeyi planlamadan önce, ağda konuşlandırılan her uygulamayı veya sistemi anlamamız emperyaldir.
Tüm uygulamaları bilmeliyiz - işlevselliğini, davranışını, aldığı girdiyi ve ortaya çıkardığı çıktıyı.
Ayrıca, birlikte çalışabilirlik testi için hazırlamadan önce her bir uygulamanın tamamen işlevsel olarak kusursuz bir şekilde test edilmesini tavsiye ederim. Yani planlarken, sadece 1 veya 2 uygulamayı düşünmeyin, tüm uygulamayı tek bir ünite olarak düşünün. Bu test tekniğini planlarken kuş bakışı görünümüne sahip olmanız gerekir. Söylemeye gerek yok - planınızı belgeleyin.
Biz kullanabiliriz standart Test Planı belgesi ve IOT planlamasını belgeleme gerekliliğine göre biraz uyarlayın. Test planınız yerine getirildikten sonra, test koşullarınızı belirlemek için devam edin.
Test koşulunuzu türetmenin odak noktası, bireysel uygulamalarla sınırlı olmamalıdır; bunun yerine tüm uygulamalardaki veri akışına dayanmalıdır. Koşullar, tümü olmasa da, ağdaki uygulamaların çoğunun üzerinden geçilecek şekilde tasarlanmalıdır.
Test koşullarınız belirlendikten sonra, test senaryolarınızı tasarlamaya veya komut dosyasına (otomatikleştirmeyi planlıyorsanız) ilerleyin. Yapabilirsin bir RTM oluştur (Gereksinimler İzlenebilirlik Matrisi) test senaryolarınızı test koşullarıyla ve test koşullarınızı kabul testi koşulları / gereksinimleri ile eşleştirmek için.
Bir ağ üzerinde çalışırken, İşlevsel Olmayan test faaliyetlerini de planlamak yine önemlidir. Bu herhangi bir yerde yazılı veya belgelenmemiş olabilir, ancak sistemin işlevsel olmayan yönlerini bir bütün olarak kontrol etmek zorunludur. Bu işlevsel olmayan alanlar performans ve güvenliği içerecektir. Gerekirse İşlevsel test, performans testi ve Güvenlik testi için ayrı bir plan oluşturabilirsiniz; veya bu test türlerinin her biri için tek bir plan ve farklı test koşulları belgesi oluşturun.
# 2) Yapın
Yapmak - aslında infazınızı yaptığınız zaman aralığıdır. İşlevsel ve işlevsel olmayan testleri yürütmek için zamanınızı buna göre planlayın. Vakaların yürütülmesi, hataların günlüğe kaydedilmesi, bunların çözümlenmesi için geliştirme ekibiyle takip edilmesi, sistemin bir bütün olarak yeniden test ve regresyon testinin yapılması, test sonuçlarının raporlanması ve taşınması aşamasındaki test döngüsünü takip ediyoruz. kapatma.
# 3) Kontrol
Kontrol - Test sonuçlarımızı yeniden gözden geçirip RTM'lerle olanları eşleştirmeye çalıştığımız ve beklenen tüm gereksinimlerin karşılanıp karşılanmadığını ve tüm uygulamaların geçip geçmediğini doğruladığımız aşamadır. Verilerin uygulamalar / sistemler arasında doğru ve sorunsuz bir şekilde aktarıldığını ve değiştirildiğini kontrol ederiz. Ayrıca, üzerinden geçilen verilerin değiştirilmediğini doğrulamamız gerekir.
Ayrıca, birlikte çalışabilirlik testinin tüm sürecini geriye dönük olarak yapmayı düşünün. İyi çalışan alanları, iyi gitmeyenleri ve ilgilenilmesi gereken eylem öğelerini belirleyin.
# 4) Harekete Geçme
Harekete Geç - Geriye dönük öğeler üzerinde hareket etmektir. “İyi uygulamalar” olarak belirlenen noktalar, bunları uygulamaya devam ediyor ve daha iyi çalışılabilecek noktalar, bunları düzeltecek adımları belirleyip ona göre hareket ediyor. İyi çalışmayan alanların veya adımların tekrarlanmaması gerektiğini unutmayın. Sonuçta, hatalarımızdan ders almalı ve onları tekrar etmemeliyiz.
5 ½ Adımlar:
- Ağın parçası olan tüm uygulamaları tanımlayın.
- İlgili işlevlerini tanımlayın.
- Her uygulama için aldığı Girdiyi ve döndürdüğü çıktıyı tanımlayın.
- Uygulamaların tümünde / çoğunda dolaşan verileri tanımlayın.
- Doğrulanması gereken her uygulama kombinasyonu ve tarihi için beklenen davranışı tanımlayın
½ Belgeleyin.
Aşağıdaki şekli düşünün:
Şekle göre 5 ½ adımı tekrarlamaya çalışalım:
- Uygulama 1, Uygulama 2, Uygulama 3 ve Uygulama 4, 4 farklı sistemdir.
- Bu sistemlerin her biri, tanımlanması gereken belirli bir işlevsellik setine sahiptir.
- Her sistemin girdi ve çıktılarının tanımlanması gerekir.
- Uygulama1 durumunda 2 çıktı verir. 1 çıktı, Uygulama 3'ün girişini oluşturur ve 1 çıkışı, Uygulama 2'nin girişini oluşturur. Uygulama 2'nin çıktısı, Uygulama 3 ve Uygulama 4'e girdiyi oluşturur.
- Her bir giriş ve çıkışın geçerliliği kontrol edilir. Burada dikkat edilmesi gereken en önemli nokta, Girdi ve çıktı şeklinde dolaşan verilerin değiştirilmemesi VE tüm uygulamanın kapsanmasıdır.
½ Gerçek hayatta bu rakam bu kadar basit görünmeyebilir. Bu aslında n sayıda giriş ve çıkış koşuluyla daha karmaşık bir yapıya neden olur.
Bu tür bir şeklin çizilmesi, farklı sistemlerde dolaşan veri ve bilgileri tanımlamak için daha iyi bir resim verecektir. Bu, test koşullarını ve vakaları elde etmemize yardımcı olacaktır.
Bir örnek:
Bir 'Hastane yönetim Sistemi' için Birlikte çalışabilirlik testi gerçekleştirmenin bir örneğini ele alalım
Bir hastane aşağıdaki bölüm ve alt bölümlerden oluşur;
Burada her departman başlı başına bir uygulamadır. Her departmanın (uygulama) kendi alt departmanı (modülleri) ve her modülün kendi birimleri vardır.
Şimdi IOT'nin kapsamını düşünmek için, işte birkaç test koşulu:
- Yol kazası geçiren (OPD Bölümü - Kaza), bacak ameliyatı geçirmesi (KBB - Genel Cerrahi), ardından fizyoterapi (Destek bölümü - Fizyoterapi) yaptıran ve ardından taburcu edilen hasta (Destek Bölümü - Kapanış)
- Kritik bakıma (Pediatri - Kritik Bakım) kabul edilen bir çocuğun ameliyat olması (Pediatri / KBB - Genel Cerrahi) ve ardından taburcu edilir (Destek Bölümü - Kapatma / PR)
- Dışarıdan bir hasta bir genel doktora (OPD departmanı) danışır; reçeteli ilaçları (Destek Departmanı - Eczane) alır ve uzaklaşır.
- Hamile bir anne düzenli kontroller için gelir (Jinekoloji bölümü - Anne ve çocuk bakımı), reçete edilen ilacı alır (Destek bölümü - Eczane) ve oradan uzaklaşır.
- Bir diş hastası kök kanalını (Diş Hekimliği bölümü) yapar, reçete edilen ilacı alır (Destek bölümü - Eczane) ve uzaklaşır.
- Bir hasta OPD'ye (genel hekim) gelir, (Kadın Hastalıkları ve Jinekoloji Bölümü - Yüksek Riskli Doğum Bölümü) 'de tedavi görür ve reçete edilen ilacı alır (Destek bölümü - Eczane) ve taburcu edilir.
Bu şekilde tüm test koşullarını belirleriz; Bölümün çoğunun kapsanması gerektiğini akılda tutarak.
Kapsamı şu şekilde göstermek için bir RTM çizebiliriz:
Bu şekilde daha fazla test koşulu belirleyebilir ve tam kapsamımızı görmek için RTM'yi çizebiliriz. Ayrıca, test çabalarımızın derinliğini RTM'ye göre belirleyebiliriz.
Bu örnekte olduğu gibi, uygulamanın tamamı (çoğu) için çıkış noktası olan 'Destek Departmanı' nın uygulama olduğunu görüyoruz, dolayısıyla bu belirli uygulama için test etme çabası diğer uygulamalara göre biraz daha fazladır.
java'da liste nasıl ilan edilir
Zorluklar:
- Tüm uygulamayı tüm permütasyonlar ve kombinasyonlarla test etmek zordur.
- Uygulamalar farklı donanım / yazılım kombinasyonlarında geliştirilir ve farklı ortamlara kurulur, bu nedenle ortamlardan herhangi biri çalışmazsa testi etkiler.
- Farklı yazılımlar ve ortamlar nedeniyle, test stratejisini belirlemek ve yürütmek başlı başına büyük bir görevdir.
- Testi yapmak için ortamı canlandırmak büyük bir zorluktur.
- Herhangi bir kusur durumunda, Kök Neden Analizi yapmak büyük bir zorluktur.
- Uygulamalar bir ağda olduğu için, ağın kapalı olduğu zamanlar olabilir. Bu nedenle testler de etkilenir.
Bu zorlukları nasıl azaltabilirim?
1) Aşağıdakiler gibi ileri test tekniklerini kullanmayı deneyin:
- OATS (Ortogonal Dizi test tekniği)
- Durum Geçiş Diyagramları,
- Neden ve sonuç grafikleri
- Eşdeğer bölümleme ve Sınır değer analizi.
Bu teknikler, uygulama arasındaki karşılıklı bağımlılığı belirlemenize ve maksimum kapsamı sağlayacak test durumlarını / koşullarını belirlemenize yardımcı olacaktır.
iki) Sistemler hangi koşullar altında çalışmıyor, tekrar harekete geçmek için ne kadar zaman gerekiyor gibi bazı geçmiş verileri belirlemeye çalışın. Bu durumda, uygulamaları etkilenmeyen senaryoları uygulamaya çalışın veya senaryoları belgelemek ve sonuçları rapor etmek için zamanı kullanın. Dahası, testi ne zaman planlasanız veya planlasanız da, bu geçmiş verileri her zaman tahmininiz için bir girdi olarak düşünün ve buna göre plan yapın.
3) PLAN - Test stratejisini belirlemek için geçmiş verileri, geçmiş deneyimleri, ekibin becerisini, çevresel faktörleri kullanın. Planınız ne kadar iyi olursa, uygulamanız o kadar iyi olur.
4) Ortamı hazırlamak için çalışmaya fiili yürütmenizin başlamasından çok daha önce başlayın. Söylemeye gerek yok - ortamı hazırlarken adımlarınızı planlayın. Yürütme işleminiz başladığında ortamınızın tamamen hazır, hazır ve çalışır durumda olduğundan emin olun.
5) IOT ile başlamadan önce, tek tek uygulamaların hiçbir kusur olmaksızın tamamen işlevsel olarak test edildiğinden emin olun. Daha sonra herhangi bir kusur durumunda, sadece bazı hatalara neden olan çevresel faktörleri aramanız gerekir.
6) 2. maddede tartışıldığı gibi, faaliyetinizi planlayın. Planlanmış bir kesinti söz konusuysa, testinizi planlarken bu kesinti süresini göz önünde bulundurmalısınız.
Cep Telefonlarında Birlikte Çalışabilirlik Testi:
Mobil cihazlarda, yeni bir Uygulama ( Mobil uygulama ) başlatıldı. Mobil cihazlarda bu testi planlarken dikkate almamız gereken birçok alan vardır:
- Piyasada bulunan mobil cihaz türleri çok büyük. Testiniz için düşünebileceğiniz her tür cihazı listelemeniz gerekir. Desteklediği işletim sistemi ile birlikte bir cihaz türünü eşleştirmeniz gerekir.
- Tüm Mobil İşletim Sistemleri farklı programlama dillerinde geliştirilmiştir. Bu nedenle, uygulamanın tüm işletim sistemi varyasyonlarına karşı test edilmesi gerekir.
- Yasal faktörleri ve bölgeyle ilgili sözleşmeleri anlamak.
- Farklı cihazların boyutu / çözünürlüğü farklıdır.
- Mobil yerleşik uygulamalar üzerindeki etkisinin de dikkate alınması gerekir.
Bu nedenle, mobil cihazlarda IOT yapmak için, tıpkı bilgisayar tabanlı bir uygulama testi için yaptığımız gibi bir plana ve bir RTM oluşturmaya ihtiyacınız olacaktır.
Niyet, strateji, riskler ve uygulama aynı olacaktır ancak araçlar ve teknikler cep telefonlarında farklı olacaktır.
Sonuç:
Birlikte çalışabilirlik testi çok büyük bir görevdir. Bu teknik, sistem test planlaması başladığında paralel olarak başlaması gereken uygun planlama gerektirir.
Bu tekniği uygularken dikkate alınması gereken birçok faktör vardır. Hata düzeltme ve yeniden test için yeterli zamanınız olduğunu unutmayın, çünkü bu büyük bir çaba, hata takibi için hazırlık yapılması gerekir.
Bu,% 100'e ulaşamayabileceğiniz olabilir kapsama , ancak vakalarımızı öyle bir şekilde seçecek kadar akıllı olmalıyız ki uygulamaların çoğu iyi test senaryosu yazma teknikleri kullanılarak tek bir akışta ele alınsın.
Umarım bu makale Birlikte çalışabilirlik testi tekniğini anlamak için yararlı olmuştur. Sorularınızı / yorumlarınızı bize bildirin.
Önerilen Kaynaklar
- Fonksiyonel Test ve Fonksiyonel Olmayan Test
- Web Uygulaması Güvenliği Test Kılavuzu
- En İyi Yazılım Test Araçları 2021 (QA Test Otomasyon Araçları)
- Pratik Örneklerle Taşınabilirlik Testi Kılavuzu
- Alfa Testi ve Beta Testi (Tam Kılavuz)
- Yazılım Testi Türleri: Ayrıntılarla Birlikte Farklı Test Türleri
- Yerelleştirme Testi ve Uluslararasılaştırma Testi nedir (Basit Kılavuz)
- Primer e-Kitap İndirmeyi Test Etme