Test Veri Yönetiminde Alternatif Bir Yaklaşım, Test Veri Yönetimi Otomasyonu Oğuzhan Kayhan1, Burak Yakupoğlu2 1,2 Kuveyt Türk AR-GE Merkezi, Kocaeli 1oguzhan.kayhan@kuveytturk.com.tr, 2burak.yakupoglu@kuveytturk.com.tr Özet. Yazılım test sürecinin önemli alt bileşenlerinden birisi de test verilerinin yönetilmesidir. Öyle ki test için harcanan toplam eforun önemli bir kısmını test verilerinin hazırlanması oluşturmaktadır. İhtiyaç duyulan test verisinin küçük bo- yutlu olduğu ve çeşitliğinin fazla olmadığı durumlarda yaygın olan Test Veri Yö- netimi anlayışı ihtiyacı karşılıyor olsa da, test verisinde boyut ve çeşitlilik arttı- ğında verinin güvenliği, tutarlılığı, bütünlüğü gibi etkenler veri yönetimini zor- laştırmakta ve bu durum yazılım test sürecini olumsuz etkilemektedir. Bu çalışma kapsamında öncelikle bilinen ve yaygın olan test veri yönetimi anlayışı incelen- miştir. Bu yaklaşımın kullanılması halinde mevcut ihtiyaçların karşılandığı ancak farklı ihtiyaçlar olması durumunda ortaya bazı problemlerin çıktığı tespit edil- miştir. Bu problemlerin çözümüne yönelik olarak Test Veri Yönetimi için alter- natif bir yaklaşım geliştirilmiş, bir otomasyon sistemi tasarlanmıştır. “Test Veri Yönetimi Otomasyonu” olarak adlandırdığımız söz konusu otomasyon sistemi- nin tasarımsal detayları anlatılmış, nasıl uygulanacağı gösterilerek uygulama sı- rasında karşılaşılan sorunlar ve çözümleri detaylıca izah edilmiştir. Anahtar Kelimeler: Yazılım Test Mühendisliği, Test Veri Yönetimi, Test Veri Yönetimi Otomasyonu. An Alternative Approach in Test Data Management, Automation of Test Data Management Oğuzhan Kayhan1, Burak Yakupoğlu2 1,2 Kuveyt Türk R&D Center, Kocaeli 1oguzhan.kayhan@kuveytturk.com.tr, 2burak.yakupoglu@kuveytturk.com.tr Abstract. One of the most important subcomponents of the software testing pro- cess is the management of test data. As such, a significant portion of the effort expended for testing constitutes an effort for test data. The amount of test data 208 required and the variety of test data is not common, the common understanding of Test Data Management is inadequate. However, when the amount and variety required is increased, such factors as data security, consistency and integrity make test data difficult to manage and this adversely affects the software testing process. In this study, firstly the familiar and widespread understanding of test data management is examined. Then, the problems encountered in the case of different needs are expressed in the work done by this method. To solve these problems, an alternative approach to Test Data Management has been developed and an automation system has been designed. The design details of the automa- tion system, which we call “Test Data Management Automation”, are explained and the problems and solutions encountered during implementation are explained in detail. Keywords : Software Test Engineering, Test Data Management, Test Data Management Automation. 1 Giriş Test Veri Yönetimi, Yazılım Test Mühendisliği alanında gün geçtikçe daha da önem kazanan bir olgudur. 2016 yılında sektör çalışanları ve yöneticileri arasında yapılan kü- resel nitelikteki bir araştırmaya göre Test Veri Yönetimi %37 oranında test faaliyetle- rinde gerekli olan temel iyileştirme alanlarından biri olarak görülmektedir [1]. Büyük boyuttaki verilerin güvenlik, tutarlılık, bütünlük vb. kriterlere uygun olarak ortamlar arasında hızlı bir şekilde aktarılması Test Veri Yönetimi alanındaki önemli gelişim noktalarından birisidir. Bunun önemli sebeplerinden biri, kişisel verilerin ko- runması ile ilgili yasal düzenlemelerin eskisine göre daha da sıkılaşması ve bunun ge- tirisi olarak Test Veri Yönetimi kapsamında temas edilen veri boyutunun eskisine göre artış göstermesidir. Kuveyt Türk Bilgi Teknolojileri bünyesinde yürütülen Test Veri Yönetimi çalışmalarında buradaki ihtiyaç görülerek, bu ihtiyaca yönelik olarak Test Veri Yönetimi Otomasyonu geliştirilmiştir. Çalışmanın ilk kısmında Test Veri Yönetimi ile ilgili genel bilgiler verilerek bu alan- daki ihtiyaca değinilmiş, yaygın olarak bilinen ve mevcutta kullanılan Test Veri Yöne- timi yaklaşımı incelenmiş, Test Veri Yönetiminde karşılaşılan zorluklar ele alınmıştır. Çalışmanın ikinci kısmında ise uygulamaya alınan Test Veri Yönetimi Otomasyonu tasarımsal detaylarıyla anlatılarak uygulama yöntemi detaylandırılmıştır. Çalışmanın son kısmında ise geliştirilen otomasyon sistemi sonrasında elde edilen kazanımlar ifade edilmiştir. 2 Neden Test Veri Yönetimi? Bir kuruluşun gerçek verilerini güvenilir bir şekilde taklit eden üretim dışı veri küme- lerinin oluşturulmasına Test Veri Yönetimi denilmektedir. Test veri yönetimi ile amaç- lanan, test edicilerin testlerini titiz ve geçerli olarak gerçekleştirebilmeleridir [2]. 209 Bir test çalışması için gerekli olan toplam eforun en az %50’sinin test verisi oluştur- mak için harcandığı bilinmektedir [3]. Uygun test verisinin belirli aralıklarla yenilen- mesi veya yeni test verisinin ihtiyaçlar kapsamında test ortamlarında yeniden oluştu- rulması sağlanmazsa, bu iş için harcanan eforun daha da artması söz konusu olacaktır. Çünkü hazırlanan test verisi test çalışmasında kullanıldıktan sonra çoğunlukla test edi- lebilir özelliğini yitirmektedir. Test verisinin yeniden oluşturulması söz konusu oldu- ğunda ise gerçeğe uygun verinin dönüştürülmesi sırasında verinin güvenliği, tutarlılığı, bütünlüğü gibi kısıtlayıcı faktörler gündeme gelmektedir. Ayrıca, konuya dair yapılan çalışmalar test verisi kalitesinin doğrudan son ürünün kalitesini ilgilendirdiğini göster- mektedir [4]. Otomasyon Testi, Performans Testi, Mobil Testler gibi diğer test uzmanlık alanla- rında da Test Veri Yönetimi her geçen gün daha çok önem kazanmaktadır. Keytorc tarafından gerçekleştirilen güncel bir araştırma, Test Veri Yönetiminin test mühendis- liğinin diğer uzmanlık alanlarına etkisini aşağıda özet halinde yer alan istatistiki bilgi- lerle gözler önüne sermektedir [5]. Test Otomasyonunda Yaşanılan Zorluklar. Katılımcıların %59’u test verilerinin en- tegrasyonunu bu zorluklar arasında görmektedir. Mobil Testlerde Karşılaşılan Zorluklar. Katılımcıların %12’si test verilerinin yeter- siz olmasını bu zorluklar arasında görmektedir. Performans Testlerinde Yaşanan Zorluklar. Katılımcıların %37’si test verilerinin yönetimini bu zorluklar arasında görmektedir. 3 Test Veri Yönetimi Yaşam Döngüsü Yaygın olan yaklaşıma göre Test Veri Yönetimi için yaşam döngüsü aşağıdaki aşama- lardan oluşmaktadır [6]. Gereksinimlerin Analiz Edilmesi. Bu aşamada test verisi için ihtiyaç ve gereksinim- ler toplanarak analiz edilir. Okunacak ve yazılacak veri kaynaklarının belirlenmesi, Veri Güvenliği açısından hassas olup maskelenmesi gereken verinin tespit edilmesi, ilgili veri için ihtiyaç duyulan depolama ve arşivleme gibi gereksinimlerin ortaya ko- nulması gibi adımlar bu aşamada gerçekleştirilir. Planlama ve Tasarım. Bu aşamada analizi yapılan ihtiyaç ve gereksinimler için çö- züm planı yapılır ve çözüm tasarımı gerçekleştirilir. Çözümün bir araç ile mi yoksa dâhili bir çalışmayla mı gerçekleştirileceğine bu aşamada karar verilir. Test Verisinin Oluşturulması. Bu aşamada çözüm tasarımı uygulamaya geçirilerek tespit edilen gereksinimler doğrultusunda test verisinin oluşturulması sağlanır. Test Verisinin Bakımı. Mevcut test verisinde yeni ihtiyaçlara göre değişikliklere gi- dilmesi veya test verisinin tazelenmesi işlemleri test yaşam döngüsü kuralları işletilerek bu aşamada gerçekleştirilir. 4 Test Veri Yönetiminde Kısıtlayıcı Etkenler Test veri yönetimindeki temel kısıtlayıcı ektenler arasında başlıca; veri güvenliği, veri tutarlılığı, veri bütünlüğü, veri depolaması ve veri yeterliliği yer almaktadır [7]. Ayrıca, 210 üzerinde farklı iş alanlarının birlikte çalıştığı daha karmaşık sistemlerde, ihtiyaç duyu- lan test verisi için yapılan işlemler aynı anda testleri devam eden farklı iş alanlarını olumsuz etkileyebilmekte veya verilerin bütünlüğünü ve tutarlılığını tehlikeye atmak- tadır. Bu nedenle test verilerinin oluşturulması daha maliyetli hale gelmektedir. Bu tür durumlarda en etkin test verisi oluşturma veya bakım yöntemi verinin periyodik aralık- larla en baştan oluşturulmasıdır. Test verisinin periyodik olarak en baştan oluşturulması büyük boyutlara sahip veri kümesi üzerinde işlem yapmayı gerektirdiğinden bu durum maliyet problemine neden olabilmektedir. Veri miktarının zaman içinde artacağı da düşünüldüğünde veri oluş- turma esnasında temas edilen veri boyutu büyüyecek ve böylece test verisinin en baştan oluşturulması için gerekli olan zaman da giderek artacaktır. 5 Kuveyt Türk Bilgi Teknolojileri Bünyesinde Uygulanan Test Veri Yönetimi Çalışmada ele alınan yöntemin uygulanmasından önce Kuveyt Türk Bilgi Teknolojileri bünyesinde yapılan Test Veri Yönetimi çalışmalarında alan bazında toplam verinin %1’ine temas edilmekteydi. Yani test verileri baştan oluşturulmak istendiğinde toplam verinin alan bazında sadece %1’i üzerinde işlem yapılmaktaydı. Bu haliyle temas edilen alan sayısı az olduğu için test verilerinin ortamlarda anonimleştirilmesi, yüklenmesi, bakımı vb. işlemler standart veri tabanı yönetimi prosedürleriyle kolaylıkla sağlanabil- mekteydi. İhtiyaçlar dâhilinde gelişen yeni Test Veri Yönetimi anlayışı ile birlikte temas edilen veri oranının %8’lere çıktığı görülmüştür. Temas edilen verideki artış nedeniyle test verisinin oluşturulması, bakımı, güvenliği, tutarlılığı, bütünlüğü gibi konular sürecin standart veri tabanı yönetimi prosedürleriyle yönetilmesini oldukça zorlu hale getir- mektedir. Buradaki zorluğun üstesinden gelebilmek için test verisinin kısa sürede, gü- venli, kolay ve işlevsel olarak oluşturulabildiği bir yöntem olarak Test Veri Yönetimi Otomasyonu tasarlanmıştır. 6 Test Veri Yönetimi Otomasyonunun Geliştirilmesi Test Veri Yönetimi otomasyonu, test verisinin oluşturulmasında veya bakımında temas edilen veri üzerinde yapılan maskeleme, anonimleştirme vb. işlemlerin otomatik ger- çekleştirilmesini sağlayan sisteme verilen isimdir. 6.1 Test Veri Yönetimi Otomasyonu İçin Sistem Gereksinimleri Test Veri Yönetimi otomasyonu için yaptığımız analiz çalışmalarına göre ihtiyaç du- yulan temel gereksinimlerin aşağıdaki gibi olduğu tespit edilmiştir.  Test ortamında kullanılacak verinin hassaslık bilgilerini içeren veri sözlüğü sistemi 211  Verinin güvenliğini, bütünlüğünü ve tutarlılığını korumak kaydıyla hassas verileri ilişkisel bütünlüğü bozmayacak (deterministik) yöntemlerle dönüştüren ve dönüştü- rülmüş veriyi ortamlara yükleyen bir araç  Veriyi dönüştürüp yükleyen araç ile veri sözlüğü sisteminin konuşmasını ve bütün- leşmesini sağlayan, verinin aktarılması ve bakımı gibi işlemleri çizelgeleyen ve tüm süreci uçtan uca yönetebilen bir yazılım uygulaması Yapılan inceleme ve çalışmalar neticesinde bu gereksinimlerin aşağıdaki yöntem ve uygulamalarla karşılanmasına karar kılınmıştır.  Veri sözlüğü sistemi olarak, Kuveyt Türk Bilgi Teknolojileri bünyesinde kurum ih- tiyaçları için üretilmiş olan Veri Sözlüğü sisteminin kullanılmasına karar verilmiştir. Veri sözlüğü, işletmenin faaliyet gösterdiği alanlarla ilgili kullandığı kavramlardan oluşan bir yapıdır. Veri tabanındaki tablolarda bulunan her bir alan sözlükteki kav- ramlardan biri ile ilişkilendirilir. Veri sözlüğünün test otomasyonunda kullanılması- nın en önemli sebebi benzer kavramların sözlükte gruplanarak yönetilebilmesidir. Örneğin; TC Kimlik Numarası bir üst kavram olarak tanımlanır. Alıcı TC Kimlik Numarası ve Gönderen TC Kimlik Numarası kavramları da bu üst kavrama bağlanır. Üst kavram ilişkisi TC Kimlik Numarası bulunan tüm alanlara erişmek için bir anah- tar özelliği taşır. Böylece kavramlara bağlı her alan için teker teker kural tanımı ya- pılmasına gerek olmaksızın maskeleme kural tanımları bir merkezden yönetilir.  Verinin dönüştürülmesi ve yüklenmesi aşamasında kullanılacak araç için Informa- tica Test Data Management (TDM) isimli Test Veri Yönetimi aracının kullanılma- sına karar verilmiştir. Informatica TDM uygulamasına karar verilirken piyasada ben- zer fonksiyonları sağlayan uygulamalar ile karşılaştırma yapılmış, çeşitli firmalar- dan örnek uygulama sunumları (PoC) istenmiştir.  Veri Sözlüğü ile Informatica aracının entegre olmasını sağlayıp ilgili işleri çizelge- leyebilen ve tüm süreci baştan sona yönetebilen bir yazılım uygulamasının gelişti- rilmesine karar verilmiştir. Bu uygulama Kuveyt Türk Bilgi Teknolojileri bünye- sinde geliştirilmiştir. Geliştirilen uygulama sistem tasarımı başlığı altında “otomas- yon yazılımı” olarak isimlendirilecektir. 6.2 Test Veri Yönetimi Otomasyonu İçin Sistem Tasarımı İlgili gereksinimler ve bu gereksinimlerin karşılanması için alınan kararlar doğrultu- sunda geliştirilen Test Veri Yönetimi otomasyon sisteminin çalışma aşamaları sırasıyla aşağıdaki adımlardan oluşmaktadır. 1. Test verisi yüklemesi yapılacak veri tabanları için kaynak ve hedef bilgileri alınır ve bu veri tabanlarında, gerçek ortamdan alınan yedek dosya ile yenileme (restore) işlemi gerçekleştirilir. 2. Yenileme işlemleri tamamlanan hedef veri tabanlarında “trigger” ve “foreign key” gibi veri tabanı nesneleri pasif konuma getirilir. Bu işlem, birbiri ile bağlayıcı iliş- kileri olan tablolar bulunduran bir veri tabanı için gereklidir. Bu adımda verinin silinmesi, aktarılması ve manipüle edilmesi esnasında oluşabilecek kısıtların önüne geçilmesi hedeflenir. Pasif duruma getirilen veri tabanı nesnelerinin kaydı tutula- 212 rak işlem sonrasında aktif duruma getirilmesi sağlanır. Bu işlem adımı, pasifleş- tirme/aktifleştirme betiklerini oluşturan ve bunları işlem sırası geldiğinde çalıştıran saklı yordamın otomasyon yazılımı tarafından tetiklenmesiyle gerçekleşir. 3. İlgili veri tabanlarında bulunan birleştirilmiş alanlar (computed column) standart yapıdaki bir alana dönüştürülerek birleştirilmiş alan durumundan çıkarılır. Dönüş- türülen alanların kaydı tutularak işlem sonrasında yeniden orijinal duruma getiril- mesi sağlanır. Bu işlem adımı, alan dönüştürme betiklerini oluşturan ve bunları işlem sırası geldiğinde çalıştıran saklı yordamın otomasyon yazılımı tarafından te- tiklenmesi ile gerçekleşir. 4. İlgili veri tabanlarında Informatica TDM aracı çalışmadan önce gerekli betiklerin çalıştırılması sağlanır. İşlem yapılacak olan veri tabanları üzerinde “view” oluştu- rularak Informatica TDM uygulamasında veri kaynaklı oluşabilecek muhtemel ha- taların önüne geçilmesi hedeflenir. Bu işlem adımı, betikleri sırası geldiğinde ça- lıştıran saklı yordamın otomasyon yazılımı tarafından tetiklenmesi ile gerçekleşir (Pre-Sql çalışması). 5. Informatica TDM aracına yerleştirilmek üzere Informatica proje XML dosyası oluşturulur. XML dosyası hangi veri tabanında hangi alanın hangi kuralla maske- leneceği bilgisini Informatica TDM aracının anlayacağı desenlerde içermektedir. Hangi alanın hangi kuralla maskeleneceği bilgisi ise Veri Sözlüğü ile yapılan bü- tünleşme çalışması neticesinde elde edilmektedir. 6. Informatica TDM aracına yerleştirilen bu XML dosyası sonrasında oluşan “Infor- matica Projesi” için Generate&Execute işlemleri gerçekleştirilir. Bu aşamadan ve- rinin dönüştürülmesi ve yüklenmesi işlemi gerçekleşmektedir. 7. İlgili veri tabanlarında Informatica Projesinin Generate&Execute işlemleri tamam- landıktan sonra ihtiyaç duyulan betiklerin çalışması sağlanır. Bu adımda, veri ihti- yacı bulunmadığından, performans kaybı yaşanmaması adına maskeleme işlemine dâhil edilmemiş olan tablo verilerinin temizlenmesi gerçekleştirilir. (Post-Sql ça- lışması). 8. İlgili veri tabanlarında “trigger” ve “foreign key” gibi veri tabanı nesneleri aktif konuma getirilir. 9. İlgili veri tabanlarında standart yapıdaki bir alan dönüştürülmüş olan birleştirilmiş alanlar (computed column) yeniden orijinal haline getirilir. 6.3 Test Veri Yönetimi Otomasyonunun Geliştirilmesi Sırasında Karşılaşılan Problemler ve Çözümleri Test Veri Yönetimi otomasyonu geliştirilmesi esnasında karşılaşılan problemler ve çö- zümleri özetle aşağıdaki gibidir.  Veri tabanı üzerinde barındırılan “foreign key” ve “trigger” nesnelerinin kaldırıl- ması noktasında Informatica TDM aracı teknoloji farklılıkları nedeniyle yetersiz kalmıştır. Bu nedenle bu nesnelerin kaldırılması ve geri getirilmesi Test Veri Oto- masyonu içerisinde Informatica TDM aracından bağımsız yönetilmiş ve ilgili prob- lem için çözüm sağlanmıştır.  Bir tabloda “Identity Insert” özelliği varsa Informatica TDM aracı bu tablodaki veriyi yüklerken tabloya ait “trigger” nesnelerini kaybetmektedir. Bu problemin 213 çözümü için bu tipteki tablolara ait “trigger” nesneleri oluşturan scriptlerim “Post- sql” aşamasında çalışması sağlanmıştır.  Bir tabloda birleştirilmiş (computed column) bir alan varsa Informatica TDM aracı bu tablodaki veriyi yüklerken hata almaktadır. Tablolarda bu alanların Informatica TDM aracı çalışmadan önce kaldırılması sağlanarak ilgili problem çözülmüştür.  TC Kimlik Numarası ve Vergi Kimlik Numarası bilgilerinin orijinal haliyle test ortamında kullanılması sakıncalı görülmektedir. Bu nedenle her bir numaraya kar- şılık gelecek şekilde kontrol algoritmalarına uygun yeni bir değer üretilmesi gerek- mektedir. Bu nedenle Informatica TDM aracı üzerinde “gelişmiş kural” oluşturu- larak bu alandaki verinin tutarlı maskelenmesi sağlanmıştır. Gelişmiş kural seçe- neği veri tabanı programlama dilinin uygulama içinde kullanılmasına imkân sağ- lamaktadır.  Test verisinin anonimleştirilmesi sırasında kullanılan maskeleme kuralları birbir- lerinden farklı veri tiplerine atanabilmektedir. Bu durum veri tipinden kaynaklı olarak ilgili kuralın çalışırken hata almasına neden olmaktadır. Maskeleme kural- larının hassas veriyle eşleştirilmesi veri tipine göre yapılacak şekilde Test Veri Yö- netimi otomasyonunda geliştirme yapılmış ve bu problem çözülmüştür. 6.4 Test Veri Yönetimi Otomasyonu ile Elde Edilen Kazanımlar Mevcut sistemden Test Veri Otomasyonuna geçişte, test verisinin oluşturulması için üzerinde işlem yapılan alan sayısı 5,5 kat artmasına rağmen test verisinin tamamının en baştan oluşturulması işlemi için harcanan sürede kayda değer bir artış gözlemlenme- miştir. Mevcut Sistem ve Test Veri Yönetimi Otomasyonu kapsamında üzerinde işlem yapılan tablo ve alan sayıları Tablo 1 ile gösterilmiştir. Tablo 1. İşlem Yapılan Tablo ve Alan Sayıları Tablosu. Tablo Sayısı Alan Sayısı Mevcut Sistem 413 441 Test Veri Yönetimi Otomasyonu 1505 2449 Mevcut sistemde test verisi, sql betikleri üzerinden herhangi bir maskeleme kuralı kullanılmaksızın, verinin doğrudan betikler ile güncellemesi şeklinde oluşturulmak- taydı. Bu durum, verinin bütünlüğünü ve tutarlılığını olumsuz etkileyebiliyor, aynı za- manda maskelenen test verisinin sistematik bir şekilde büyümesi ihtiyacına yanıt ver- miyordu. Test Veri Yönetimi Otomasyonu ile test verisi oluşturulurken maskeleme ku- rallarının kullanılması sağlanmış, böylece veri tutarlılığını ve bütünlüğünü olumsuz et- kilemeden anonimleştirme işleminin gerçekleştirilmesi sağlanmıştır. Aynı zamanda bü- yüme ihtiyacı söz konusu olduğunda sql betiklerine ihtiyaç duymaksızın tanım tabanlı olarak büyüme imkânı kazanılmıştır. Test veri otomasyonu içerisinde kullandığımız bazı maskeleme kuralları ve kullanım adetleri Tablo 2 ile gösterilmiştir. Tablo 2. Maskeleme Kuralları Tablosu. Maskeleme Kuralı Kullanım Sayısı 214 N_DET_NUMBER (Gelişigüzel bir değer alır. Veri bütünlüğü korunur.) 1476 S_DET_NAME (Gelişigüzel bir isim değeri alır. Veri bütünlüğü korunur.) 240 S_DET_CARD (16 haneli kart numarasının ilk 6 ve son 4 hanesi sabit tutulur. 200 Geriye kalan rakamlar gelişigüzel bir değer alır. Veri bütünlüğü korunur.) S_RND_NUMBER (Değer numerik tipe dönüştürülür (gelişmiş kural) ve 174 N_DET_NUMBER kuralına sokulur.) S_DET_TCKN (TCKN algoritmasına uygun bir değer üretilir.) 53 S_STA_CITY (Kuralda tanımlanmış olan şehir değerini alır.) 45 S_RND_PHONE (Verinin son 6 rakamını gelişigüzel bir değerle değiştirir.) 44 S_STA_ADDRESS (Kuralda tanımlanmış olan adres değerini alır.) 43 D_RND_DATE_PAST (Belirtilen aralıkta rastgele bir tarih değeri alır.) 25 S_STA_MAIDENNAME (Kuralda tanımlanmış olan kızlık soyadı değerini 24 alır.) Hangi alanda hangi maskeleme kuralının kullanılacağı bilgisi Veri Sözlüğü siste- minde yönetilmektedir. TDM uygulaması Veri Sözlüğü sistemine entegre olduğu için alan-kural eşleştirmeleri kolaylıkla gerçekleşmektedir. Mevcut sistemde fiziksel ilişkisi olmayan ancak mantıksal ilişki bulunan tablolarda işlem yapılırken verilerin bütünlüğü bozulabilmekteydi. Veri sözlüğü entegrasyonu ile bu sorunun çözüldüğü görülmüştür. 7 Sonuç Bu çalışmada Test Veri Yönetiminin zorluklarından ve bu alanda gündeme gelen yeni ihtiyaçlardan ana hatlarıyla bahsedilmiştir. Test veri yönetimindeki söz konusu zorluk- ların aşılması ve yeni ihtiyaçların karşılanması için alternatif yaklaşımlardan birisi olan test verisinin yönetilmesini otomatikleştirme yaklaşımı ele alınarak örnek bir Test Veri Otomasyonu sistemi geliştirilmiştir. Geliştirilen Test Veri Yönetimi otomasyonun Ku- veyt Türk Bilgi Teknolojileri bünyesindeki uygulanışı anlatılmıştır. Test Veri Yönetimi otomasyonunun uygulanması neticesinde test verisinin yönetil- mesinin daha pratik ve esnek hale geldiği, değişen ihtiyaçlara daha hızlı adapte olabil- diği, testin ve testi yapılan uygulamanın kalitesini artırmaya katkı sağladığı gözlemlen- miştir. Kaynaklar 1. ISTQB Worldwide Software Testing Practices Report 2015-2016 (2016). 2. What is Test Data Management?, https://www.informatica.com/services-and-training/glos- sary-of-terms/test-data-management-definition.html, son erişim 2017/06/05. 3. Khurana, P., Bindal, P.: Test Data Management. In: International Journal of Computer Trends and Technology, vol. 15, No 14, pp. 162, Delhi (2014). 4. Test Manager Insights 2016-17, Keytorc (2017). 5. Derek M. Kozikowski: Test Data Management Challenges and Solutions (2009). 215 6. Khurana, P., Bindal, P.: Test Data Management. In: International Journal of Computer Trends and Technology, vol. 15, No 14, pp. 163, Delhi (2014). 7. Bagare, P., Desyatnikov, R.: Test Data Management in Software Testing Life Cycle, Exter- nal Document Infosys Limited (2015). 216