Skip to main content
Yazılım

Yapay Zeka ile Test Otomasyonu: Akıllı Test Senaryoları

Eylül 05, 2025 14 dk okuma 47 views Raw
afrikalı-amerikalı çocuk, ai, arka plan bulanık içeren Ücretsiz stok fotoğraf
İçindekiler

Yapay Zeka Destekli Test Otomasyonu Temeller

Bir bakışla temel kavramlar

Sıkıntılı teslim tarihleri ve artan hata yoğunluklarıyla yüzleşen bir geliştirici olarak düşünün: testler her şeyi yavaşlatıyor ve geri bildirim gecikiyor. Bu noktada Yapay Zeka ile Test Otomasyonu: Akıllı Test Senaryoları devreye girer ve süreçleri dönüştürür. Yapay zeka destekli test otomasyonu temel olarak üç bileşene dayanır: test senaryosu tasarımı, yürütme ve sonuç analizi. Yapay zeka burada yeni senaryolar önermek, veri üretmek ve beklenen ile gerçek sonuçlar arasındaki farkı hızlıca göstermek için çalışır. İzlenebilirlik ve sürümlere bağlı değişiklikleri takip etmek, sürekli entegrasyon CI ile uyumlu çalışmak da hayati öneme sahiptir. Bu kavramlar, manuel çabanın ötesine geçerek hızlı geri bildirim sağlar ve hatalar erken aşamada yakalanır.

İsterseniz şu gerçeği aklınızdan çıkarmayın: AI sizi tamamen otomatize etmez; sizi güçlendirir. İnsan uzmanlığı olmadan AI sadece yüzeysel sonuçlar üretebilir. Bu nedenle temel kavramları öğrenmek; hangi durumda hangi aracı kullanacağınızı bilmek, güvenilir bir otomasyon zemini kurmanın anahtarıdır.

Hangi görevler Otomatikleştirilir

Bir projede AI destekli test otomasyonu, çoğunlukla tekrarlı ve veri odaklı görevleri hedef alır. Hayal edin ki bir özellik eklenince yüzlerce test adımı aynı anda güncellenebiliyor. Bu bölümde otomatikleştirilebilecek görevler netleşir:

  • Test senaryosu türetme ve güncelleme: AI, gereksinimlerden yaratıcı ancak güvenilir senaryolar çıkarır.
  • Test verisi üretimi ve maskeleme: sahte veya gerçekçi veriler hızla oluşturulur; özel veriler korunur.
  • UI ve API test yürütmesi: tek bir komutla çoklu tarayıcılar ve API uç noktaları çalıştırılır.
  • Görsel karşılaştırma ve regresyon testleri: değişimlerin etkisi hızlıca görünür.
  • Hata analiz ve raporlama: AI, uç değerler ve mantık hatalarını öne çıkarır.

Birçok ekip burada zaman kazanır: bir özelliğin kabul kriterleri değişse bile, otomatikleştirilmiş süreçler bu değişikliklere hızla adaptasyon sağlar. Bu, özellikle sık güncellenen ürünlerde hataların erken yakalanmasına ve müşteri memnuniyetinin artmasına yardımcı olur.

Kullanılacak Araçlar ve Yaklaşımlar

Güncel ekosistemde temel araçlar ve AI destekli çözümler birleşerek kuvvetli bir otomasyon kurar. İyi bir başlangıç için şu kategorileri ve örnekleri düşünün:

  • UI ve API otomasyonu: Selenium, Playwright, Cypress gibi araçlar güvenilir yürütme sağlar.
  • AI destekli test otomasyonu çözümleri: Testim, Mabl, Functionize, Applitools gibi araçlar test senaryosu oluşturmayı ve görsel doğrulamayı güçlendirir.
  • Test veri üretimi ve maskeleme: Faker, Mockaroo ve benzeri araçlar gerçekçi ama güvenli veriler üretir.
  • Güçlü içerik üretimi ve senaryo keşfi: Yapay Zeka ile Test Otomasyonu: Akıllı Test Senaryoları kapsamında GPT tabanlı modeller yönlendirme sağlar.

Birkaç gerçekçi senaryo: bir ekip UI değiştiğinde gördüğü kırılmaları otomatik olarak tespit eder; başka birinde görsel regresyonlar için görsel test araçları ile ekran görüntülerini karşılaştırır. Ancak AI ile çalışırken veri gizliliği ve güvenlik konularını da asla göz ardı etmeyin; test verilerini anonimleştirmek ve erişimleri kısıtlamak şarttır.

Neden ve Nasıl Uygulanmalı

AI destekli test otomasyonuna neden yatırım yapmalısınız sorusunun cevabı net: daha hızlı geri bildirim, daha yüksek kapsama ve operasyonel verimlilik. Ancak AI her şeyi kendiliğinden çözecek sanmak hataya yol açabilir. En sık karşılaşılan hatalar: AI çıktılarında bilgi güvenliği riskleri, flaky testler ve bakımsız veri yönetimi. Bu yüzden stratejiyi küçük bir pilotla başlatıp ölçütleri açıkça belirlemek gerekir. Başarılı bir uygulama için şu yaklaşımı benimseyin:

  1. Hedefleri netleşin: hangi modül veya fonksiyon için AI destekli otomasyon istiyorsunuz?
  2. Pilot proje belirleyin: 4 ila 6 hafta süren bir hedef özelliğe odaklanın.
  3. Güvenlik ve veri yıkama kuralları kurun: hassas verileri maskeleme ve erişimi kısıtlama.
  4. Geliştirme ve operasyon için ekip yapısı kurun: QA, Geliştirme ve Veri Bilimi arasında açık roller.
  5. Başarı metriklerini tanımlayın: geri bildirim süresi, kapsama artışı ve hata azaltımı gibi göstergeler.

What if senaryoları: UI sık sık değişiyorsa nasıl adapte olursunuz; veriler hassas ise hangi güvenlik önlemleri gerekir? Bu sorulara yanıt bulmak, ilerideki adımların güvenli temellerini atar. Hızlı ilerlemek için hemen bugün küçük bir adım atın ve bir sonraki adımda Yapay Zeka ile Test Otomasyonu: Akıllı Test Senaryoları kavramını kendi projenize uyarlayın.

Akıllı Test Senaryosu Tasarımı

Akıllı Senaryoların Temeli: Kullanıcı Davranışlarını Modellemek

Bir test ekibi olarak yüzlerce kullanıcı akışını tek tek manuel olarak test etmeyi sürdürmek çoğu zaman yorucu ve verimsiz bir çaba haline gelir. Bu noktada akıllı test senaryoları devreye girer ve gerçek kullanıcı davranışını taklit eden dinamik bir doğrulama rejimini mümkün kılar. Bu yaklaşım, testleri sadece belirli adımlara odaklı tutmaz; kullanıcıların hangi yolları tercih ettiğini, hangi aşamalarda sıkıştığını ve hangi durumlarda hata verdiğini anlamanızı sağlar. Yapay Zeka ile Test Otomasyonu: Akıllı Test Senaryoları kavramı altında, senaryolar iş akışlarını bozan anları yakalamak için iş verilerini ve davranış örüntülerini kullanır. Sonuç olarak hedef, güvenli, hızlı ve kullanıcı deneyimini sekteye uğratan noktaları tespit ederek iyileştirmek olur. Bu yaklaşım ayrıca ekipleri korur; hataların yalnızca teknik sorunlar olmadığını gösterir ve iş sürecindeki kopuklukları da görünür kılar. Böylece testler daha az bakıma ihtiyaç duyar, daha çok gerçek dünya başarısızlıklarına karşı dayanıklı hale gelir ve kullanıcıların yolculuğu kesintisiz kalır.

Kullanıcı Davranışlarını Modelleme Yaklaşımları

Akıllı senaryoları tasarlarken iki temel yaklaşım devreye girer: veriye dayalı davranış modelleme ve kullanıcı profilleri üzerinden senaryo soyları oluşturma. Gerçek dünya kullanım verilerinden elde edilen örüntüler, adımlar arasındaki geçiş olasılıklarını hesaplar ve senaryoları yaşamsal akışlar halinde yeniden üretir. Örneğin bir alışveriş sitesinde kullanıcılar önce ürün arar, sonra filtre uygular, karşılaştırma yapar ve sonunda ödeme aşamasına geçer; bu yolun sıklığı ve tercihleri Markov zinciriyle temsil edilebilir. Persona temelli modeller ise farklı kullanıcı tiplerinin karar süreçlerini öne çıkarır; genç kullanıcılar hızlı gezinmeyi tercih ederken deneyimli kullanıcılar karşılaştırma ve güvenlik adımlarını ön planda tutar. Bu çeşitlilik, test kapsamasını genişletir ve uç durumlar da dahil olmak üzere gerçek davranışları yakalamayı kolaylaştırır. Zaman damgaları, cihaz türleri ve ağ kalitesi gibi bağlamlar eklemek, testlerin hedef kullanıcıya daha yakın olmasını sağlar. Bu teknikler birlikte kullanıldığında testler tek bir yolun tekrarı olmaktan çıkar ve beklenmeyen iş akışı varyasyonlarında bile güvenilir sonuçlar sunar.

  • Gerçek kullanıcı davranışlarını yakalama
  • Kapsamı genişleten dinamik senaryo üretimi
  • Test bakımını kolaylaştıran esnek yapı
  • Erken uyarım ve hata tespiti için zengin veri analitiği

Varyasyonlar ile Kapsamı Genişletme

Varyasyonları oluşturarak kapsamı genişletmek, akıllı senaryoların en güçlü yönlerinden biridir. Birkaç parametreyi değiştirerek veya farklı cihazlar ile ağ koşulları altında aynı akışı yeniden tetiklemek, gerçek kullanım çeşitliliğini yakalamaya yardım eder. Kombinasyonel test teknikleri ile hangi adımların hangi sıralarda ve hangi koşullarda kritik olduğunu belirlemek mümkün olur. Örneğin bir ödeme akışında kullanıcı kimlik doğrulama yöntemi, kart türü, ülke ve 2 faktörlü doğrulama tercihi gibi değişkenler üzerinden varyasyonlar üretebilirsiniz. Bu varyasyonlar otomatik olarak doğrulanabilir hale getirilmelidir; her senaryo için beklenen çıktı, durum değişkenleri ile açıkça tanımlanır ve hata durumları için net mesajlar üretilir. Planlama aşaması, hangi varyasyonların en kritik olduğunu ve hangi sınır değerlerin eklenmesi gerektiğini belirlemek için hayati öneme sahiptir. Böylece ekip, kapsamı genişleten fakat bakım maliyetini azaltan bir denge kurabilir.

  1. Çekirdek akışları tanımla ve varyasyon parametrelerini belirle
  2. Kritik kombinasyonları önceliklendir:
  3. Çevresel koşulları simüle et (tarayıcı, cihaz, ağ)
  4. Olası hata mesajlarını ve geri bildirimleri netleştir

Beklenen Sonuçları Otomatik Olarak Doğrulama

Beklenen sonuçları otomatik olarak doğrulama, akıllı senaryoların güvenilirliğini artırır. Her varyasyon için durum ağacı üzerinde ileriye dönük kontrol noktaları kurulur; çıktı karşılaştırmaları, beklenen durumlar ile karşılaştırılır ve sapmalar anında raporlanır. Doğrulama mekanizmaları, tolerans aralıkları, hatalı giriş senaryoları ve olası güvenlik ihlallerine karşı otomatik uyarılar içermelidir. Ayrıca görünürlük için görsel diff yoluyla hangi adımın neden başarısız olduğuna dair izler tutulabilir. Bu süreç, sürekli entegrasyon ve sürekli teslimat pipelinesine entegre edilerek yeni sürümlerde regresyon riskini azaltır. Son olarak, model tabanlı doğrulama ile hangi varyasyonların gerçekte müşteride karşılaşılabilir olduğuna dair içgörü kazanırsınız. Böylece ekipler, hangi değişkenlerin gerçekten iş sonuçlarını etkilediğini bilir ve test stratejisini buna göre evrilir.

Pratik Uygulama ve Sonraki Adımlar

Şu adımları takip ederek hemen ilerleyebilirsiniz:

  1. Hedef kullanıcı yolculuklarını belirle ve ana akışları haritalayın
  2. Kullanıcı davranışlarını modellemek için verileri topla ve en uygun modelleme yöntemini seç
  3. Varyasyon stratejisini planla; uç ve yaygın senaryoları dengeli şekilde ekle
  4. Beklenen sonuçları otomatik doğrulama için net oracles ve test altyapısını kur
  5. Sonuçları analiz et, öğrenilenleri geri bildirim olarak test senaryolarına entegre et

Otomasyon Stratejileri ve Entegrasyon

Bir değişiklik yaptığın günün sonunda, hatalar hızla çoğalır ve zorlu bir geri bildirim zinciri başlar. Ekip olarak kısa sürede güvenli, tekrarlanabilir ve ölçeklenebilir bir süreç istemek insanî bir ihtiyaç haline gelir. Bu bölümde Yapay Zeka ile Test Otomasyonu: Akıllı Test Senaryoları çerçevesinde CI/CD entegrasyonu, test verisi yönetimi ve AI odaklı hata tespiti için uygulanabilir adımlar sunacağım. Gerçek dünya senaryoları ve yaygın araç entegrasyonlarıyla ilerleyerek, ilerlemeyi hızlandırırken hataların kontrolünü ele almanızı hedefliyorum.

CI/CD Entegrasyonu

Bir girişim düşün: Ürün ekibi her gün değerli bir sürüm çıkarıyor ve siz değişiklikleri güvenli biçimde üretime taşıyan bir CI/CD zinciri kuruyorsunuz. İlk sorun, testlerin kısmen yerinde çalışması ve bazı hataların PR aşamasında yakalanmamasıdır. Bu yüzden entegrasyonu net tanımlayın: her committen sonra otomatik derleme, bağımlılık kontrolü, test koşusu ve güvenlik taraması, ardından sonuçların dashboard’da görünürlüğü. Yapay Zeka ile Test Otomasyonu: Akıllı Test Senaryoları bağlamında test odaklı bir yaklaşım, hangi testlerin gerçekten ihtiyaç duyduğunu belirlemek için değişikliklere duyarlı bir Test Impact Analysis sağlar.

  1. Planlama ve tasarım: CI/CD akışını kod depolarınıza bağlayın; GitHub Actions, GitLab CI veya Jenkins ile PR tetiklemelerini güvenilir kılın.
  2. İzole ve tekrarlanabilir ortamlar: Docker konteynerleri ve Kubernetes ile her test için temiz çevreler oluşturun; IaC araçlarıyla altyapıyı otomatik olarak yönetin.
  3. Test entegrasyonu: Cypress, Playwright veya Selenium ile uçtan uca otomasyon testlerini pipeline’a dahil edin; test verilerini güvenli bir biçimde pompalayın.
  4. Geri bildirim ve gözlem: Başarısızlıkta hızlı düzeltilmesi için hatayı otomatik olarak sınıflandıran bir hata analitiği gösterge tablosu kurun.
  5. Süreç iyileştirme: Başarısız testlerin yüzdesini düşürmek için periyodik geribildirim döngüleri ve test azaltma analizleri yapın.

İyi haber şu ki herkes için yürütülebilir bir yol var. Jenkins ile eski eklentileri aşarak GitHub Actions veya GitLab CI ile modern dağıtımlar kurabilir, Cypress ile tarama testlerini hızla paralelleştirebilirsiniz. Yaygın araç entegrasyonları arasında GitHub Actions ile Playwright veya Cypress, GitLab CI ile Selenium, ve Jira ile Xray gibi takip araçlarının entegrasyonu öne çıkar. Bu entegrasyonlar, hataların üretim geçmişinden bağımsız olarak erken fark edilmesini sağlar ve takımınızın güvenliğini güçlendirir. Bu bölümde paylaştığım adımlar, verilerinizi ve testleri güvenli bir şekilde üretime taşımanızı kolaylaştırır ve Yapay Zeka ile Test Otomasyonu: Akıllı Test Senaryoları yaklaşımıyla karar destekli bir yeni standart oluşturur.

Uygulamada, önce bir PR tetiklendiğinde derleme ve bağımlılık kontrolü çalışır; ardından sanal test çevreleri hazırlanır ve otomatik olarak uçtan uca testler yürütülür. Hata durumunda, AI destekli analizler hangi testlerin en kritik hatayı ortaya çıkardığını gösterir; bu sayede ekipler, hangi hataların hangi commit ile geldiğini kolayca izler. Bu deneyim, hataların sadece tekrarlayan hatalar olarak değil, süreçteki zayıf noktalar olarak görülmesini sağlar ve sonraki sürüm için net yol haritası sunar.

Test Verisi Yönetimi

Testlerinizin güvenli, tekrar üretilebilir ve gerçekçi verilerle çalışması gerekir. Ancak üretim verisini kullanmak hem güvenlik riskleri doğurur hem de testler arasında veri sızıntısına yol açabilir. Burada test verisi yönetimi stratejisi devreye girer. Verilerin sahte, anonimleştirilmiş veya türetilmiş olması, testlerin güvenliğini artırır ve hata tespitini güçlendirir. Bu bağlamda Yapay Zeka ile Test Otomasyonu: Akıllı Test Senaryoları yaklaşımıyla verinin üretimden bağımsız olarak nasıl güvenli biçimde çoğaltılacağını görürüz.

  1. Veri güvenliği ve anonimleştirme: Özel bilgiler gizlenir; kimlik bilgilerinin maskelenmesi ve rol tabanlı erişim politikaları uygulanır.
  2. Synthetic ve seed verisi üretimi: Faker gibi araçlarla gerçekçi sahte veriler üretilir; test koşullarına uygun senaryolar için veriler önceden toplanır.
  3. Veri sürümü ve tekrarlanabilirlik: Veriler sürümlenir; hangi sürümün hangi testlerle uyumlu olduğunu bilgilendirir.
  4. Veri kalitesi ve doğrulama: Great Expectations gibi çerçevelerle verinin beklenen yapıda olup olmadığını otomatik olarak kontrol edin.

Bir örnek düşünün: Ürün kayıtları için sahte kullanıcılar üretip, ödeme süreçlerini yalnızca test verileriyle çalıştırırsınız. Mock veriyle güvenliği sağlarken, veriyi değiştirdiğiniz her durumda testlerin hangi senaryolarda tetiklendiğini net görürsünüz. Böylece hatalar veri kaynaklarında mı yoksa iş mantığında mı ortaya çıkıyor kolayca ayırt edilir. Bu yaklaşım, operasyonel güvenliği artırır ve testleri daha güvenli, daha hızlı hale getirir.

AI Odaklı Hata Tespiti

Bir sonraki adım, hataların nedenlerini hızlıca bulmaktır. İnsanların gözden kaçırdığı ince ayrıntılar, yapay zekanın gücüyle ortaya çıkar. AI odaklı hata tespiti, hataları sadece bulmakla kalmaz, aynı zamanda kök nedeni kavrar ve çözümler için öneriler sunar. Bu da hatayı yeniden üretme süresini kısaltır ve stresli anlarda bile güvenilir geri bildirim sağlar. Yapay Zeka ile Test Otomasyonu: Akıllı Test Senaryoları bağlamında bu yaklaşım güvenlik, ölçek ve kalite dengesini kurmak için vazgeçilmez bir araç haline gelir.

  1. Veri toplama ve etiketleme: Test sonuçları, loglar ve çevresel veriler biriktirilir; hangi hata tipinin hangi koşullarda ortaya çıktığını etiketlemek için yapılandırılır.
  2. Model oluşturma ve değerlendirme: Hata sınıflandırması, kök neden analizi ve anomali tespiti için basit modeller kullanılır; güncel verilere göre sürekli öğrenme sağlanır.
  3. Entegrasyon ve karar destek: CI/CD akışına entegre edilen modeller, hatalı testleri zararlı mı yoksa çevresel mi olarak işaretler; geliştirme ekibi için öneriler sunar.

Mülakatlarda veya proje toplantılarında sıklıkla karşılaştığınız yaygın yanılgı, yapay zekanın tüm sorunları tek başına çözeceği düşüncesidir. Ancak gerçek güç, insan kararlarıyla AI tavsiyelerinin birleşiminde yatar. AI odaklı hata tespiti ile testler arasındaki bağ kopmaz, aksine daha hedefli ve güvenilir hale gelir. Bu yaklaşım, Yapay Zeka ile Test Otomasyonu: Akıllı Test Senaryoları içindeki akıllı test planlarının bir parçası olarak görüldüğünde en büyük değerini gösterir. Sonuçta amaç, hataları erken yakalamak ve ekipleri başarıya taşıyan güvenli bir dağıtım süreci kurmaktır.

Bir sonraki adım olarak, CI/CD, test verisi yönetimi ve AI odaklı hata tespiti arasındaki bağları güçlendirmek için sizin için uygulanabilir bir yol haritası çıkarmaya hazırım. Şimdi hemen hangi alanları en çok ihtiyaç duyduğunuzu belirleyerek başlamak için kısa bir envanter çıkarın: test kapsamınızı gözden geçirin, veriyi anonimli hale getiren bir strateji belirleyin ve hataları hızla sınıflandırıp müdahale edebileceğiniz bir AI destekli izleme panosu oluşturun. Bu adımlar, sizin için gerçek bir dönüşüm yaratabilir ve yazılım kalitenizi bir adım öteye taşıyabilir.

Performans İzleme ve Optimizasyon

Birçok ekip, test sonuçlarını boğucu bir veri akışı olarak görür ve gerçek sorunları ayırt etmekte zorlanır. Bu belirsizlik, hataları geciktirir ve bakım maliyetlerini artırır. Başarı, sonuçları sadece görmek değil onları anlamlı eylemlere dönüştürmektir. Bu noktada Yapay Zeka ile Test Otomasyonu: Akıllı Test Senaryoları yaklaşımı devreye girer; sonuçları hızlıca değerlendirir, hangi metriklerin kritik olduğunu gösterir ve otomatik iyileştirme için güvenli öneriler üretir. Düşünün ki doğru metriklere odaklandığınızda yalnızca hataları değil testi bozan tasarım kusurlarını da görürsünüz. Şimdi şu pratik yol haritasını uygulayın.

Pratik Yol Haritası

  1. Test sonuçlarını toplama ve temizleme: yinelenen hataların nedenlerini kaydedin, zaman damgalarını normalleştirin ve çakışan verileri ayıklayın.
  2. Temel metrikleri belirleme: güvenilirlik, hatalı test oranı, flakiness, yanıt süresi ve throughput gibi göstergeleri standartlaştırın.
  3. Eğilimleri ve korelasyonları inceleme: sürümler arasındaki değişimleri ve hangi modüllerin etkili olduğunu görsel olarak izleyin.
  4. Otomatik iyileştirme önerileri üretme: test tasarımını güçlendirme, fail-fast ilkelerini kullanma, self-healing testler ve veri yönetimini iyileştirme önerileri ekleyin.
  5. Bakım süreçlerini otomatikleştirme: CI/CD ile hızlı geri bildirimler kurun, bakım planlarını periyodik olarak otomatikleştirin.

Bu yaklaşım size sadece hatayı düzeltmekten öte güvenilir bir bakım ritmi kazandırır. İyi haber şu ki küçük ama stratejik değişiklikler, bakım maliyetini önemli ölçüde düşürür ve ekibi daha hızlı yol almaya iter. Parçalı sorunlar yerine bütünleşik çözümler üreterek ilerleyin ve her adımda what-if analizleriyle yönünüzü güçlendirin.

Sık Sorulan Sorular

Kaygını anlıyorum; önce hedefleri netle, en kritik riskleri belirle ve kısa bir MVP kur. Başlangıç için bir smoke test seti ve güvenilir bir veri kümesiyle yürüt, sonra geri bildirimlerle iyileştir.

Pilot aşaması genelde 2-6 hafta, sonra tam entegrasyon 2-3 ayı bulabilir. Hedef, önce küçük bir alanda başlamak ve ilerledikçe adım adım ölçeklemek; ilerleyişi haftalık hedeflerle takip etmek işe yarar.

Bu doğru değil; AI, süreci hızlandırır ve tekrarı güvenilirleştirir ama kritik kararlar ve bakım insanlar tarafından yapılır. İlk adım olarak hangi senaryolara odaklanacağını yazıp insan gözetimini planlamak en iyisi.

Temel olarak Python veya JavaScript bilgisi, temel API/UI test kavramları, CI/CD bilgisi ve veri hazırlama becerileri faydalı olur; düşük-kod/orta-kod araçlarıyla başlanabilir. Her hafta küçük bir senaryo yazıp çalıştırmak, öğrenmeyi hızlandırır.

Hedefleri netle, metrikleri belirle: hata sızıntısı azaltımı, otomasyon kapsamı, bakım çabası ve test süresi tasarrufu ile AI doğruluğu gibi göstergeler. Bir pilotla başlayıp 4-8 hafta sonunda değişimi görmeye odaklan; basit bir gösterge panosu kurmak motive edici olur.

Bu yazıyı paylaş