Ücretsiz Java Kütüphanesi ile Otomatik Video Kaydı
Video Kaydediciyi Selenium Grid'inize entegre etmek, Uzaktan Düğüm videolarını yakalamak ve Somut Görsel Kanıtlarla Hataları analiz etmek için Açık Kaynak Java Kütüphanesi.
Video Kaydedici Nedir?
Kullanıcı arayüzlerini test etmek, özellikle farklı tarayıcılar ve cihazlar arasında, çıplak ellerinizle duman yakalamaya çalışmak gibi olabilir. Bir test başarısız olduğunda, neyin yanlış gittiğini merak ederek kafanızı kaşırsınız. Bu bir zamanlama sorunu mu? Eksik bir öğe mi? Garip bir yarış koşulu mu? İşte bu noktada Video Recorder kütüphanesi devreye girer – sadece birkaç açıklama (annotation) ile UI testlerinizin videosunu otomatik olarak yakalayan bir Java aracıdır. Sergey Pirogov tarafından GitHub'ta sunulan bu kütüphane, geliştiricilerin birkaç açıklama ya da yapılandırma ekleyerek test sırasında otomatik olarak kaydı başlatmasını sağlayarak video kaydını son derece basitleştirir. Hataları manuel olarak yeniden üretmek yerine, ekipler kaydedilen videoları izleyerek test yürütmesi sırasında ne olduğunu anlayabilir.
Video Recorder, JUnit 4/5, TestNG ve Spock gibi popüler test çerçeveleriyle sorunsuz bir şekilde bütünleşen açık kaynaklı bir Java kütüphanesidir. Ekran kayıtlarını manuel olarak başlatıp durdurmak yerine, test metodlarınıza sadece bir @Video açıklaması eklemeniz yeterlidir. Kütüphane geri kalanını halleder – testiniz çalışmadan önce kaydı başlatır ve tamamlandığında videoyu kaydeder, genellikle sadece test başarısız olduğunda (ancak bunu farklı şekilde yapılandırabilirsiniz). Kütüphane, temel kayıt cihazı olarak Monte Media (saf Java, kurulumu daha kolay ancak formatları sınırlı) veya FFmpeg (daha güçlü, farklı codec'ler ve ekran yapılandırmaları için daha iyi destek) kullanır. Selenium Grid gibi uzaktan testlerde, ek bir yapılandırma gerektirmeden uzaktaki düğümde bile video kaydedebilir.
Video Kaydedici ile Başlarken
Video Recorder kütüphanesini kullanmanın önerilen yolu Maven bağımlılığı eklemektir. Sorunsuz bir çalışma için lütfen aşağıdaki komutu kullanın.
Video Kaydedici Kütüphanesi için Maven Bağımlılığı
<dependency> <groupId>com.automation-remarks</groupId> <artifactId>video-recorder-testng</artifactId> <version>LATEST</version> </dependency>documents4j GitHub'ı Kurun
implementation 'com.automation-remarks:video-recorder-junit5:2.0'
Java ile Açıklama Tabanlı Video Kaydı
Açık kaynak Video Recorder kütüphanesinin en büyük avantajlarından biri, ek açıklama‑tabanlı tasarımıdır. Geliştiriciler, test sınıflarına veya yöntemlerine ek açıklama ekleyerek kaydı kolayca etkinleştirebilir. Bu, tekrarlayan kodu azaltır ve JUnit gibi Java test çerçeveleri için entegrasyonu basitleştirir. @Video ek açıklaması, test başlamadan önce otomatik olarak kaydı başlatır ve tamamlandıktan sonra kaydı durdurur. Bunun çeşitli faydaları vardır; örneğin minimum kod değişikliği, kolay benimseme ve daha temiz test dosyaları.
Açıklama Tabanlı Videoyu Java Kütüphanesi ile Nasıl Kaydedilir?
import com.automation.remarks.video.annotations.Video;
public class LoginTest {
@Video
public void testLogin() {
System.out.println("Executing login test...");
}
}
ustom Video Naming
Java Kütüphanesi ile Özel Video Adlandırma
Açık kaynak Video Recorder kütüphanesi, Java geliştiricilerinin kayıtlar için özel adlandırma kuralları uygulamasını sağlar ve ekiplerin kayıtları daha verimli bir şekilde düzenlemesine yardımcı olur. Bu, birden fazla test paketi çalıştırıldığında faydalıdır. Daha iyi dosya organizasyonu, daha kolay artefakt bulma ve geliştirilmiş raporlama entegrasyonu gibi faydalar sunar. İşte bu işlemi nasıl gerçekleştireceğinizi gösteren basit bir örnek.
Java Kütüphanesi ile Video Dosyası Nasıl Oluşturulur?
@Video(name = "checkout_flow_test")
public void checkoutTest() {
System.out.println("Checkout process running");
}
Java Kütüphanesi ile Özel Video Adlandırma
Video Recorder çok güçlüdür ve her şeyi kontrol eder – çıktı klasöründen kayıt moduna (her zaman, başarısızlıkta, yalnızca ek açıklamalı testler) kadar çerçeve hızına ve ekran boyutuna kadar. Sınıf yolunuzda bir video.properties dosyası oluşturun veya Maven/Gradle komut satırıyla parametreleri geçirin. Bu, yerel geliştirme (her zaman kayıt) ile CI (yalnızca başarısızlıkları kaydet) için farklı kayıt stratejileri belirlemenizi sağlar.
Video Recorder Kütüphanesini Kullanarak Çeşitli Kayıt Özellikleri Nasıl Uygulanır?
# Only record tests annotated with @Video (default)
video.mode=ANNOTATED
# Save videos only when a test fails (saves disk space)
video.save.mode=FAILED_ONLY
# Output directory – use an environment variable for CI
video.folder=${user.home}/test-reports/videos
# Frame rate – lower for faster processing, higher for smooth playback
video.frame.rate=15
# Use FFmpeg for better codec support
recorder.type=FFMPEG
Yüksek Performanslı Kayıt için FFmpeg Entegrasyonu
Gelişmiş kullanıcılar için kütüphane FFmpeg'i doğrudan (Monte Media yerine) çağırabilir. FFmpeg daha düşük CPU kullanımı, daha fazla kodek (H.264, VP9) ve belirli bir uygulama penceresini veya bölgeyi kaydetme yeteneği sunar. Test makinesine FFmpeg'in kurulu olması ve Windows'ta zarif duraklamalar için SendSignalCtrlC.exe aracının bulunması yeterlidir.