ONVIF Device Test Tool (Cihaz Test Aracı), ONVIF üyeleri tarafından IP ağ gözetim ürünlerinin uygunluk testleri için kullanılmaktadır. Bu araç tarafından üretilen test raporu, bir üreticinin test edilen cihaz modelinin ONVIF standardının gerekliliklerine uygunluğunu kendi kendine beyan etmesi için temel bir referans niteliğindedir.
Not : ONVIF Device Test Tool indirebilmek için onvif portalında üye girişi yapılması gerekmektedir. Bu yazı kapsamında kullanılan tool versiyonu 18.06. Yeni versiyon 20.06’dır.
Teste başlamadan önce, test ortamının tasarımı :
DUT : Device under test – Test edilecek olan cihaz
ONVIF Client (test tool) : ONVIF device test tool yazılımının yüklü olduğu istemci bilgisayar
HTTP Proxy : HTTP üzerinden RTP ve RTSP tünelleme sağlar
Wireless Access Point : Wireless desteği olan cihazlar için wireless bağlantı sağlar.
DNS Server : DUT için ya da bağlı diğer cihazlar için DNS ile ilgili parametreleri sağlar
DHCP Server : Bağlı cihazlar için IPV4 adres sağlar.
Switching Hub : L2 seviyesinde cihazların aynı ağda olmasını ve konuşabilmelerini sağlar.
Discovery sekmesinde, ağda ONVIF ara yüzünü destekleyen cihazların bulunup bulunmadığını kontrol edebilir, cihazları bulabilir, ayrıntılarını inceleyebilir ve test edilecek cihazı seçebilirsiniz. Test işlemi sırasında kullanılacak cihazlar için kimlik bilgilerini (kullanıcı adı ve şifre) de girebilirsiniz. Discover devices (cihazları keşfet) seçildiğinde, ONVIF ara yüzü açık olan tüm cihazlar listelenir. Eğer listelenmiyorsa, ONVIF ara yüzünün etkinleştirildiğinden emin olun.
Bu sekmede kimlik bilgileri girilen test cihazının marka, model, seri numarası, firmware versiyonu çekilebilir.
Marka, Model, seri numarası, firmware versiyonu dışında scopes alanında desteklenen profilleri de görüntüleyebiliyoruz.
Profile/Streaming ya da Profile/S
Profile/G
Profile/T desteklemektedir.
Marka, Model, seri numarası, firmware versiyonu dışında scopes alanında desteklenen profilleri de görüntüleyebiliyoruz.
Profile/Streaming ya da Profile/S
Profile/G
Profile/T desteklemektedir.
Gerçekten profile/G desteği var mı 3.parti bir yazılımla kontrol edelim. Digifort içine Axis P1435LE modelini ekleyelim. Test edecek olduğumuz bu cihaz içinde SD kart olması gerekmektedir.
Hem kamera web ara yüzünden sd karta yapılan kayıtlara baktığımızda, hem de Digifort ara yüzünden edge playback yapınca, sd kart üzerinden tutulan kayıtlar oynatılmaktadır. Profile G desteklediğini görmüş olduk.
Profiller kapsamındaki desteklenen özelliklerin yapılabilmesi için hem device hem de client tarafında profillerin desteklenmesi gerekmektedir. Hem Axis P1435-LE hem de Digifort her ikisi de ONVIF Profil G desteği bulunmaktadır.
Conformance test – uyumluluk testine başlamadan önce (çok uzun sürüyor :)) diagnostic altından bazı manuel testler yapalım. IP Configuration – IPV4 uyumluluk testi yapalım.
IPCONFIG-1-1-1-v16.07 IPV4 STATIC IP
STEP 1 – Get network interfaces
StepStart: 2021-10-10T11:51:52.8453396Z
Transmit done
Receive done
STEP PASSED
STEP 2 – Check that the DUT returned current interfaces
StepStart: 2021-10-10T11:51:55.5610345Z
STEP PASSED
STEP 3 – Verifying IPv4 presence
StepStart: 2021-10-10T11:51:58.7246069Z
interface = eth0
STEP PASSED
STEP 4 – Waiting for Hello message…
StepStart: 2021-10-10T11:51:58.7305642Z
STEP PASSED
STEP 5 – Set network interface
StepStart: 2021-10-10T11:51:58.733554Z
interface token = eth0
IPv4 DHCP = False
IPv4 Address = 192.168.1.91 [24]
Transmit done
Receive done
reboot need = False
STEP PASSED
STEP 6 – Waiting for Hello message from the DUT
StepStart: 2021-10-10T11:51:58.9986671Z
Receive done
STEP PASSED
STEP 7 – 5 seconds timeout after Hello
StepStart: 2021-10-10T11:52:01.8023489Z
STEP PASSED
STEP 8 – Verifying Hello message
StepStart: 2021-10-10T11:52:06.8146332Z
Endpoint Address = urn:uuid:8e3d486c-20e7-4c9c-916f-496a1c92ec7e
Service Address(es) = http://192.168.1.91/onvif/device_service http://169.254.117.170/onvif/device_service
Hello verified successfully
STEP PASSED
STEP 9 – Identifying right address
StepStart: 2021-10-10T11:52:06.8226171Z
Old address http://192.168.1.90/onvif/device_service
Selecting http://192.168.1.91/onvif/device_service
STEP PASSED
STEP 10 – Get network interfaces
StepStart: 2021-10-10T11:52:06.8455301Z
Transmit done
Receive done
STEP PASSED
STEP 11 – Verifying appliance of IPv4 static settings
StepStart: 2021-10-10T11:52:08.9615219Z
Check for interface token = eth0
DHCP applied
Manual address(es): 192.168.1.91 [24]
Settings applied successfully
STEP PASSED
STEP 12 – Waiting for Hello message…
StepStart: 2021-10-10T11:52:09.0223181Z
STEP PASSED
STEP 13 – Restore network settings
StepStart: 2021-10-10T11:52:09.0352746Z
Transmit done
Receive done
reboot need = False
STEP PASSED
STEP 14 – Waiting for Hello message from the DUT
StepStart: 2021-10-10T11:52:09.5256592Z
Receive done
STEP PASSED
STEP 15 – 5 seconds timeout after Hello
StepStart: 2021-10-10T11:52:13.0253447Z
STEP PASSED
STEP 16 – Waiting for Hello message…
StepStart: 2021-10-10T11:52:18.046792Z
STEP PASSED
STEP 17 – Waiting for Hello message from the DUT
StepStart: 2021-10-10T11:52:18.0617509Z
STEP 18 – Verifying Hello message
StepStart: 2021-10-10T11:53:18.0671695Z
Endpoint Address = urn:uuid:8e3d486c-20e7-4c9c-916f-496a1c92ec7e
Service Address(es) = http://192.168.1.90/onvif/device_service http://169.254.117.170/onvif/device_service
Hello verified successfully
STEP PASSED
STEP 19 – Identifying right address
StepStart: 2021-10-10T11:53:18.0905977Z
Old address http://192.168.1.90/onvif/device_service
Selecting http://192.168.1.90/onvif/device_service
STEP PASSED
TEST PASSED
Test başarılı bir şekilde tamamlandı. Eski IP adresi 192.168.1.90 iken, test esnasında son oktet +1 arttırılarak 192.168.1.91 yapılıyor ve statik IP adresi alıp alamadığı kontrol ediliyor. Test sonunda tekrardan 192.168.1.90 olarak ayarlanıyor.
Test başarılı bir şekilde tamamlandı. Eski IP adresi 192.168.1.90 iken, test esnasında son oktet +1 arttırılarak 192.168.1.91 yapılıyor ve statik IP adresi alıp alamadığı kontrol ediliyor. Test sonunda tekrardan 192.168.1.90 olarak ayarlanıyor.
Motion detection – hareket tespit video analitiği desteklenmektedir. Ancak IMAGE TOO BLURRY event’i desteklenmemektedir.
IMAGING-4-1-1-v18.06 REALTIME PULLPOINT SUBSCRIPTION – IMAGE TOO BLURRY
STEP 1 – Get Device service address
StepStart: 2021-10-10T13:08:11.7258297Z
http://192.168.1.90/onvif/device_service
STEP PASSED
STEP 2 – Check that the DUT returned Device service address
StepStart: 2021-10-10T13:08:11.7298217Z
STEP PASSED
STEP 3 – Get Services
StepStart: 2021-10-10T13:08:11.7886308Z
Transmit done
Receive done
STEP PASSED
STEP 4 – Get Event Properties
StepStart: 2021-10-10T13:08:11.8753174Z
Transmit done
Receive done
STEP PASSED
STEP 5 – Check that the DUT returned at least one of the specified topics
StepStart: 2021-10-10T13:08:12.3627863Z
The DUT did not return the specified topics
STEP FAİLED
TEST FAİLED
Motion detection test çıktısı :
IMAGING-4-1-5-v18.06 REALTIME PULLPOINT SUBSCRIPTION – MOTION ALARM
STEP 1 – Get Device service address
StepStart: 2021-10-10T13:08:10.0256407Z
http://192.168.1.90/onvif/device_service
STEP PASSED
STEP 2 – Check that the DUT returned Device service address
StepStart: 2021-10-10T13:08:10.0296284Z
STEP PASSED
STEP 3 – Get Services
StepStart: 2021-10-10T13:08:10.0987817Z
Transmit done
Receive done
STEP PASSED
STEP 4 – Get Event Properties
StepStart: 2021-10-10T13:08:10.1520142Z
Transmit done
Receive done
STEP PASSED
STEP 5 – Check that the DUT returned at least one of the specified topics
StepStart: 2021-10-10T13:08:10.6389731Z
STEP PASSED
STEP 6 – Checking description of event with topic tns1:VideoSource/MotionAlarm
StepStart: 2021-10-10T13:08:10.8683177Z
STEP PASSED
STEP 7 – Create Pull Point Subscription
StepStart: 2021-10-10T13:08:10.8728743Z
Transmit done
Receive done
STEP PASSED
STEP 8 – Check that TerminationTime is specified
StepStart: 2021-10-10T13:08:10.9138706Z
STEP PASSED
STEP 9 – Check that TerminationTime and CurrentTime has reasonable values
StepStart: 2021-10-10T13:08:10.9168611Z
STEP PASSED
STEP 10 – Validate CurrentTime and TerminationTime
StepStart: 2021-10-10T13:08:10.9198516Z
STEP PASSED
STEP 11 – Check if the DUT returned SubscriptionReference
StepStart: 2021-10-10T13:08:10.9228418Z
STEP PASSED
STEP 12 – Check if SubscriptionReference contains address
StepStart: 2021-10-10T13:08:10.9278714Z
STEP PASSED
STEP 13 – Check that URL specified is valid
StepStart: 2021-10-10T13:08:10.9318561Z
STEP PASSED
STEP 14 – Send PullMessages request
StepStart: 2021-10-10T13:08:10.937846Z
Transmit done
Receive done
STEP PASSED
STEP 15 – Validate CurrentTime and TerminationTime
StepStart: 2021-10-10T13:08:11.0020118Z
STEP PASSED
STEP 16 – Check that a maximum number of 1 Notification Messages is included in PullMessagesResponse
StepStart: 2021-10-10T13:08:11.0162785Z
STEP PASSED
STEP 17 – Response is not empty
StepStart: 2021-10-10T13:08:11.0326483Z
STEP PASSED
STEP 18 – Waiting for notifications
StepStart: 2021-10-10T13:08:11.1786307Z
STEP PASSED
STEP 19 – Send Unsubscribe request
StepStart: 2021-10-10T13:08:11.1987786Z
Transmit done
Receive done
STEP PASSED
TEST PASSED
Şimdi de ODTT ile conformance test (uyumluluk testi) yapalım. Test 30-40 dk arasında sürebiliyor.
Scope kapsamında desteklenen ve desteklenmeyen profiller listeleniyor.
Toplamda 373 adımlı bir test yapıldı. Fail olanlar ve Passed olanlar sayısal olarak özet tabloda veriliyor. Generate Test report butonuna tıklayarak test raporu alınır.
Eğer ortamda NTP, DHCP, DNS vb yoksa Tests Failed sayısının yüksek olmasına neden olur çünkü NTP,DHCP, DNS kapsamındaki testler için yanıt alamaz ve fail sayısını 1 arttırır. Bu arada NTP, DNS tanımını management tabından yapmak gerekmektedir.
Son olarak Debug sekmesinden cihazın belli parametreleri ile ilgili test yapabiliriz.
IP adres ataması, yeniden başlatma, cihaz bilgisi, PTZ kabiliyetleri, live video alma vb.
Kaynak :