{"id":33110,"date":"2025-10-29T20:02:31","date_gmt":"2025-10-29T17:02:31","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/"},"modified":"2025-10-29T20:02:31","modified_gmt":"2025-10-29T17:02:31","slug":"on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/","title":{"rendered":"On-Prem Test Intra Tools: Kendi Bar\u0131nd\u0131r\u0131lan Test Platformlar\u0131na Eksiksiz K\u0131lavuz"},"content":{"rendered":"<p><body><\/p>\n<style>\n    body {\n      font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n      line-height: 1.7;\n      color: #333;\n      margin: 0 auto;\n      max-width: 960px;\n      padding: 25px;\n      background-color: #f9fbfd;\n    }\n    h2, h3 {\n      color: #2c3e50;\n      margin-top: 40px;\n      margin-bottom: 20px;\n      padding-bottom: 5px;\n      border-bottom: 1px solid #e0e0e0;\n    }\n    h2 {\n      font-size: 1.8em;\n    }\n    h3 {\n      font-size: 1.4em;\n    }\n    p {\n      margin-bottom: 18px;\n      text-align: justify;\n    }\n    ul, ol {\n      margin-bottom: 18px;\n      padding-left: 25px;\n    }\n    li {\n      margin-bottom: 8px;\n    }\n    pre {\n      background-color: #e8f0fe;\n      border: 1px solid #cceeff;\n      padding: 15px;\n      border-radius: 8px;\n      overflow-x: auto;\n      margin-bottom: 20px;\n      font-size: 0.9em;\n      line-height: 1.5;\n    }\n    code {\n      font-family: 'Consolas', 'Monaco', 'Courier New', Courier, monospace;\n      color: #333;\n    }\n    table {\n      width: 100%;\n      border-collapse: collapse;\n      margin-bottom: 25px;\n      box-shadow: 0 2px 10px rgba(0,0,0,0.05);\n    }\n    th, td {\n      border: 1px solid #eee;\n      padding: 12px 15px;\n      text-align: left;\n    }\n    th {\n      background-color: #eef5fc;\n      font-weight: bold;\n      color: #2c3e50;\n    }\n    td {\n      background-color: #ffffff;\n    }\n    .interactive-tip {\n      background-color: #e6f7ff;\n      border-left: 6px solid #3399ff;\n      padding: 18px 20px;\n      margin-bottom: 25px;\n      border-radius: 6px;\n      color: #333;\n      font-size: 0.95em;\n      box-shadow: 0 1px 5px rgba(0,0,0,0.08);\n    }\n    .interactive-tip strong {\n      color: #2277bb;\n      font-size: 1.1em;\n      display: block;\n      margin-bottom: 8px;\n    }\n    blockquote {\n      border-left: 4px solid #ccc;\n      margin: 1.5em 10px;\n      padding: 0.5em 10px;\n      color: #666;\n      font-style: italic;\n    }<\/p>\n<p>    \/* Mobil uyumlu HTML i\u00e7in medya sorgusu \u00f6rne\u011fi *\/\n    @media (max-width: 768px) {\n      body {\n        padding: 15px;\n      }\n      h2 {\n        font-size: 1.5em;\n      }\n      h3 {\n        font-size: 1.2em;\n      }\n      table, thead, tbody, th, td, tr {\n        display: block;\n      }\n      thead tr {\n        position: absolute;\n        top: -9999px;\n        left: -9999px;\n      }\n      tr {\n        border: 1px solid #ddd;\n        margin-bottom: 10px;\n      }\n      td {\n        border: none;\n        border-bottom: 1px solid #eee;\n        position: relative;\n        padding-left: 50%;\n        text-align: right;\n        min-height: 40px; \/* Ensure enough space for content *\/\n        display: flex;\n        align-items: center;\n        justify-content: flex-end;\n      }\n      td:before {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 45%;\n        height: 100%;\n        padding-left: 10px;\n        white-space: nowrap;\n        text-align: left;\n        font-weight: bold;\n        display: flex;\n        align-items: center;\n        background-color: #f8f8f8;\n        border-right: 1px solid #eee;\n        box-sizing: border-box; \/* Include padding in width *\/\n      }\n      \/* Etiketleri manuel olarak ekleyin, i\u00e7erik tablosu i\u00e7in \u00f6zelle\u015ftirme *\/\n      td:nth-of-type(1):before { content: \"Ara\u00e7 Ad\u0131\"; }\n      td:nth-of-type(2):before { content: \"A\u00e7\u0131klama\"; }\n      td:nth-of-type(3):before { content: \"On-Prem Destek\"; }\n      td:nth-of-type(4):before { content: \"\u00d6ne \u00c7\u0131kan \u00d6zellikler\"; }\n    }\n    @media (max-width: 480px) {\n      body {\n        font-size: 0.9em;\n        line-height: 1.6;\n      }\n      pre {\n        font-size: 0.8em;\n        padding: 10px;\n      }\n      .interactive-tip {\n        padding: 15px;\n        font-size: 0.85em;\n      }\n    }\n  <\/style>\n<p>Veri g\u00fcvenli\u011fi endi\u015feleri, kat\u0131 reg\u00fclasyonlar veya bulut maliyetlerinin \u00f6ng\u00f6r\u00fclemezli\u011fi nedeniyle test s\u00fcre\u00e7lerinizi kendi sunucular\u0131n\u0131zda bar\u0131nd\u0131rmak ister misiniz? Bu kapsaml\u0131 rehber, on-premise test ara\u00e7lar\u0131n\u0131n kurulumu, y\u00f6netimi ve optimizasyonu hakk\u0131nda bilmeniz gereken her \u015feyi ad\u0131m ad\u0131m a\u00e7\u0131kl\u0131yor, b\u00f6ylece test altyap\u0131n\u0131z \u00fczerinde tam kontrol sa\u011flayabilirsiniz.<\/p>\n<p>G\u00fcn\u00fcm\u00fcz\u00fcn dijital d\u00fcnyas\u0131nda yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7leri h\u0131zla evriliyor ve test s\u00fcre\u00e7leri de bu de\u011fi\u015fimin ayr\u0131lmaz bir par\u00e7as\u0131 haline geliyor. Ancak bir\u00e7ok kurulu\u015f, test altyap\u0131s\u0131n\u0131 tamamen bulut tabanl\u0131 \u00e7\u00f6z\u00fcmlere ta\u015f\u0131rken baz\u0131 kritik endi\u015felerle kar\u015f\u0131 kar\u015f\u0131ya kal\u0131r. \u00d6zellikle finans, sa\u011fl\u0131k, kamu gibi hassas verilerle \u00e7al\u0131\u015fan sekt\u00f6rler i\u00e7in veri g\u00fcvenli\u011fi ve uyumluluk konular\u0131 vazge\u00e7ilmez bir \u00f6nceliktir. Bulut sa\u011flay\u0131c\u0131s\u0131na olan ba\u011f\u0131ml\u0131l\u0131k, veri egemenli\u011fi endi\u015feleri, d\u00fczenleyici uyumluluk gereksinimleri (GDPR, KVKK, HIPAA gibi) ve beklenmedik maliyet art\u0131\u015flar\u0131, \u015firketleri kendi b\u00fcnyelerinde bar\u0131nd\u0131r\u0131lan (on-premise) test platformlar\u0131na y\u00f6neltmektedir.<\/p>\n<p>Kendi bar\u0131nd\u0131r\u0131lan test platformlar\u0131, \u015firketlere test ortamlar\u0131 \u00fczerinde tam kontrol sa\u011flama, \u00f6zel g\u00fcvenlik politikalar\u0131 uygulama ve a\u011f mimarilerini istedikleri gibi yap\u0131land\u0131rma \u00f6zg\u00fcrl\u00fc\u011f\u00fc sunar. Bu, \u00f6zellikle hassas m\u00fc\u015fteri verileriyle veya fikri m\u00fclkiyet i\u00e7eren kod tabanlar\u0131yla \u00e7al\u0131\u015f\u0131rken hayati \u00f6neme sahiptir. Bulut \u00e7\u00f6z\u00fcmlerinde bazen kar\u015f\u0131la\u015f\u0131labilecek performans dalgalanmalar\u0131 veya servis kesintileri gibi d\u0131\u015f fakt\u00f6rlerden etkilenmeden, kendi donan\u0131m kaynaklar\u0131n\u0131z\u0131 y\u00f6neterek istikrarl\u0131 bir test ortam\u0131 yaratabilirsiniz. Dahas\u0131, uzun vadede lisans ve kullan\u0131m tabanl\u0131 bulut maliyetlerinin \u00f6tesinde, kendi altyap\u0131n\u0131z\u0131 kurmak ve y\u00f6netmek, \u00f6ng\u00f6r\u00fclebilir ve daha d\u00fc\u015f\u00fck toplam sahip olma maliyetleri (TCO) sunabilir. B\u00f6ylece, test s\u00fcre\u00e7lerinizi \u015firketinizin \u00f6zel ihtiya\u00e7lar\u0131na g\u00f6re titizlikle optimize etme f\u0131rsat\u0131 bulursunuz.<\/p>\n<p>Ger\u00e7ek d\u00fcnya senaryolar\u0131nda, \u00f6rne\u011fin b\u00fcy\u00fck bir bankan\u0131n yeni bir mobil bankac\u0131l\u0131k uygulamas\u0131 geli\u015ftirdi\u011fini d\u00fc\u015f\u00fcnelim. Bu uygulama m\u00fc\u015fteri finansal verilerine eri\u015fece\u011fi i\u00e7in, uygulaman\u0131n test edilmesi s\u0131ras\u0131nda dahi bu verilerin en y\u00fcksek g\u00fcvenlik standartlar\u0131nda korunmas\u0131 \u015fartt\u0131r. Banka, bulut tabanl\u0131 bir test platformu kullanmak yerine, kendi veri merkezinde tamamen izole edilmi\u015f bir on-prem test ortam\u0131 kurmay\u0131 tercih eder. Bu sayede, test verileri asla bankan\u0131n kontrol\u00fcndeki fiziksel ve sanal g\u00fcvenlik s\u0131n\u0131rlar\u0131n\u0131n d\u0131\u015f\u0131na \u00e7\u0131kmaz. T\u00fcm a\u011f trafi\u011fi i\u00e7 a\u011fda kal\u0131r, veri s\u0131z\u0131nt\u0131s\u0131 riski minimuma iner ve denet\u00e7ilere yasal uyumluluk konusunda tam g\u00fcvence verilebilir. Bu yakla\u015f\u0131m, sadece g\u00fcvenlik de\u011fil, ayn\u0131 zamanda bankan\u0131n \u00f6zel performans gereksinimlerini kar\u015f\u0131layacak \u015fekilde donan\u0131m ve yaz\u0131l\u0131m kaynaklar\u0131n\u0131 esnek bir \u015fekilde \u00f6l\u00e7eklendirme imkan\u0131 da tan\u0131r. K\u0131sacas\u0131, on-premise \u00e7\u00f6z\u00fcmler, kontrol, g\u00fcvenlik ve maliyet optimizasyonu arayan kurulu\u015flar i\u00e7in stratejik bir tercih haline gelmektedir.<\/p>\n<h2>On-Prem Test Ara\u00e7lar\u0131n\u0131n Temel Kavramlar\u0131: Mimari ve Bile\u015fenler Nelerdir?<\/h2>\n<p>On-premise test ara\u00e7lar\u0131, ad\u0131ndan da anla\u015f\u0131laca\u011f\u0131 gibi, bir kurulu\u015fun kendi fiziksel veya sanal altyap\u0131s\u0131 \u00fczerinde kurulan ve y\u00f6netilen test yaz\u0131l\u0131mlar\u0131n\u0131 ifade eder. &#8220;Intra tools&#8221; terimi ise bu ara\u00e7lar\u0131n \u015firket i\u00e7i a\u011flarda \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131, d\u0131\u015far\u0131dan eri\u015fimin genellikle k\u0131s\u0131tland\u0131\u011f\u0131n\u0131 ve kurumun kendi g\u00fcvenlik politikalar\u0131na tabi oldu\u011funu vurgular. Bu t\u00fcr bir yap\u0131land\u0131rma, test s\u00fcre\u00e7leriniz \u00fczerinde tam bir denetim kurman\u0131z\u0131 sa\u011flar. Peki, b\u00f6yle bir test platformunun temel mimarisi ve bile\u015fenleri nelerdir?<\/p>\n<p>Bir on-prem test platformu genellikle birden fazla entegre bile\u015fenden olu\u015fur. \u0130lk olarak, <strong>Test Y\u00f6netim Ara\u00e7lar\u0131<\/strong> kritik \u00f6neme sahiptir. Bunlar, test senaryolar\u0131n\u0131n olu\u015fturulmas\u0131, y\u00fcr\u00fct\u00fclmesi, sonu\u00e7lar\u0131n\u0131n takibi ve hata y\u00f6netimi gibi s\u00fcre\u00e7leri kapsar. Jira (Zephyr Scale, Xray gibi eklentilerle), TestLink veya Redmine gibi \u00e7\u00f6z\u00fcmler bu kategoriye girer. Bu ara\u00e7lar, test ekibinin i\u015f y\u00fck\u00fcn\u00fc organize etmesine, ilerlemeyi izlemesine ve genel test stratejisini y\u00f6netmesine olanak tan\u0131r. Ard\u0131ndan, <strong>Test Otomasyon \u00c7er\u00e7eveleri<\/strong> gelir. Selenium, Playwright, Cypress gibi ara\u00e7lar web uygulamalar\u0131n\u0131n; Appium mobil uygulamalar\u0131n; Postman veya SoapUI ise API&#8217;lerin otomatik test edilmesinde kullan\u0131l\u0131r. Bu \u00e7er\u00e7eveler, tekrarlayan test g\u00f6revlerini otomatikle\u015ftirerek zamandan tasarruf sa\u011flar ve hata oran\u0131n\u0131 d\u00fc\u015f\u00fcr\u00fcr.<\/p>\n<p>\u00dc\u00e7\u00fcnc\u00fc ve belki de en \u00f6nemli bile\u015fenlerden biri <strong>S\u00fcrekli Entegrasyon\/S\u00fcrekli Da\u011f\u0131t\u0131m (CI\/CD) Entegrasyonudur<\/strong>. Jenkins, GitLab CI, TeamCity gibi CI\/CD ara\u00e7lar\u0131, kod de\u011fi\u015fiklikleri yap\u0131ld\u0131\u011f\u0131nda otomatik testlerin tetiklenmesini, derlenmesini ve da\u011f\u0131t\u0131m ad\u0131mlar\u0131n\u0131n y\u00fcr\u00fct\u00fclmesini sa\u011flar. Bu, yaz\u0131l\u0131m geli\u015ftirme ya\u015fam d\u00f6ng\u00fcs\u00fcn\u00fcn (SDLC) her a\u015famas\u0131nda kalitenin g\u00fcvence alt\u0131na al\u0131nmas\u0131na yard\u0131mc\u0131 olur. Test otomasyonu, CI\/CD pipeline&#8217;lar\u0131na entegre edilerek geli\u015ftiriciler kodlar\u0131n\u0131 birle\u015ftirdi\u011finde an\u0131nda geri bildirim al\u0131rlar. Son olarak, <strong>Raporlama ve Analiz Ara\u00e7lar\u0131<\/strong>, test sonu\u00e7lar\u0131n\u0131 g\u00f6rsel ve anla\u015f\u0131l\u0131r bir \u015fekilde sunar. Allure Report, ExtentReports gibi ara\u00e7lar, test ko\u015fullar\u0131, ba\u015far\u0131\/ba\u015far\u0131s\u0131zl\u0131k oranlar\u0131, performans metrikleri hakk\u0131nda detayl\u0131 raporlar olu\u015fturarak karar vericilere \u0131\u015f\u0131k tutar.<\/p>\n<p>T\u00fcm bu bile\u015fenlerin \u00e7al\u0131\u015fabilmesi i\u00e7in g\u00fc\u00e7l\u00fc bir teknik altyap\u0131 gereklidir. Bu altyap\u0131 genellikle sanalla\u015ft\u0131rma teknolojileri (VMware vSphere, Proxmox, Hyper-V) veya konteynerizasyon (Docker, Kubernetes) kullan\u0131larak kurulur. Sanal makineler veya Docker konteynerleri, test ortamlar\u0131n\u0131n izole edilmesini, kolayca kopyalanabilmesini ve kaynaklar\u0131n verimli kullan\u0131lmas\u0131n\u0131 sa\u011flar. Ayr\u0131ca, bu platformlar\u0131n \u015firket i\u00e7i a\u011f yap\u0131s\u0131na entegrasyonu, gerekli g\u00fcvenlik duvar\u0131 kurallar\u0131, a\u011f segmentasyonu ve eri\u015fim kontrollerinin do\u011fru bir \u015fekilde yap\u0131land\u0131r\u0131lmas\u0131n\u0131 da i\u00e7erir. Bu sayede, on-prem test ortam\u0131 sadece fonksiyonel olmakla kalmaz, ayn\u0131 zamanda kurumun genel g\u00fcvenlik ve operasyonel standartlar\u0131na da uyumlu hale gelir.<\/p>\n<h2>Kendi Test Platformunuzu Ad\u0131m Ad\u0131m Kurulum: Bir Jenkins &#038; Selenium Grid \u00d6rne\u011fi<\/h2>\n<p>Kendi bar\u0131nd\u0131rd\u0131\u011f\u0131n\u0131z test altyap\u0131n\u0131z\u0131 kurmak, ba\u015flang\u0131\u00e7ta karma\u015f\u0131k g\u00f6r\u00fcnebilir, ancak do\u011fru ad\u0131mlarla ilerledi\u011finizde olduk\u00e7a y\u00f6netilebilir bir s\u00fcre\u00e7tir. Bu b\u00f6l\u00fcmde, k\u00fc\u00e7\u00fck ve orta \u00f6l\u00e7ekli bir yaz\u0131l\u0131m ekibinin on-premise bir CI\/CD ve otomasyon altyap\u0131s\u0131 olarak Jenkins ve Selenium Grid&#8217;i nas\u0131l kurup yap\u0131land\u0131rabilece\u011fine dair ad\u0131m ad\u0131m bir vaka analizi sunaca\u011f\u0131z. Bu senaryoda, ekip web uygulamalar\u0131n\u0131n testlerini kendi sunucular\u0131nda g\u00fcvenli ve kontroll\u00fc bir ortamda \u00e7al\u0131\u015ft\u0131rmak istemektedir.<\/p>\n<h3>Ad\u0131m 1: Gereksinim Analizi ve Donan\u0131m Se\u00e7imi<\/h3>\n<p>\u0130lk olarak, testlerinizin ne kadar kaynak t\u00fcketece\u011fini belirlemeniz gerekir. Ne kadar paralel test \u00e7al\u0131\u015ft\u0131racaks\u0131n\u0131z? Hangi taray\u0131c\u0131lar ve i\u015fletim sistemleri \u00fczerinde test yapman\u0131z gerekiyor? Bu sorular\u0131n cevaplar\u0131, gerekli sunucu donan\u0131m\u0131n\u0131 (CPU, RAM, depolama) belirlemenize yard\u0131mc\u0131 olur. \u00d6rne\u011fin, 10 paralel Selenium testi i\u00e7in en az 8 \u00e7ekirdekli bir i\u015flemci ve 16GB RAM \u00f6nerilir. Bu senaryo i\u00e7in, Ubuntu Server 20.04 LTS \u00fczerinde \u00e7al\u0131\u015fan, 4 \u00e7ekirdekli bir CPU, 8GB RAM ve 100GB SSD depolama alan\u0131na sahip sanal bir sunucu kullanaca\u011f\u0131z.<\/p>\n<h3>Ad\u0131m 2: \u0130\u015fletim Sistemi ve \u00d6nko\u015fullar<\/h3>\n<p>Ubuntu Server 20.04 LTS kurulu ve SSH eri\u015fimi olan bir sunucunuz oldu\u011funu varsayal\u0131m. Jenkins ve Selenium Grid&#8217;in \u00e7al\u0131\u015fabilmesi i\u00e7in Java Runtime Environment (JRE) gereklidir. Bu nedenle, OpenJDK&#8217;y\u0131 kurarak ba\u015flamal\u0131y\u0131z.<\/p>\n<pre><code>\n    sudo apt update\n    sudo apt install -y openjdk-11-jre-headless\n    java -version\n  <\/pre>\n<p><\/code><\/p>\n<p>Bu komutlar, sisteminizi g\u00fcncelleyecek ve Java 11 JRE'yi kuracakt\u0131r. Kurulumun ard\u0131ndan <code>java -version<\/code> komutu ile Java'n\u0131n do\u011fru bir \u015fekilde y\u00fcklendi\u011fini do\u011frulayabilirsiniz. Ayr\u0131ca, Jenkins'in depolar\u0131n\u0131 eklemek ve paketi indirmek i\u00e7in baz\u0131 temel ara\u00e7lara da ihtiyac\u0131m\u0131z olabilir.<\/p>\n<h3>Ad\u0131m 3: Jenkins Kurulumu ve Ba\u015flang\u0131\u00e7 Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>Jenkins'i kurmak i\u00e7in resmi Jenkins deposunu sisteminize eklemeniz gerekiyor. Bu, gelecekteki g\u00fcncellemeleri kolayla\u015ft\u0131racakt\u0131r.<\/p>\n<pre><code>\n    sudo apt update\n    sudo apt install -y wget apt-transport-https ca-certificates\n    wget -q -O - https:\/\/pkg.jenkins.io\/debian-stable\/jenkins.io.key | sudo apt-key add -\n    sudo sh -c 'echo deb https:\/\/pkg.jenkins.io\/debian-stable binary\/ > \/etc\/apt\/sources.list.d\/jenkins.list'\n    sudo apt update\n    sudo apt install -y jenkins\n    sudo systemctl start jenkins\n    sudo systemctl enable jenkins\n    sudo systemctl status jenkins\n  <\/pre>\n<p><\/code><\/p>\n<p>Bu ad\u0131mlar Jenkins'i kurar, ba\u015flat\u0131r ve sistem ba\u015flang\u0131c\u0131nda otomatik ba\u015flamas\u0131n\u0131 sa\u011flar. <code>sudo systemctl status jenkins<\/code> komutu ile servis durumunu kontrol edin. Jenkins varsay\u0131lan olarak 8080 portunda \u00e7al\u0131\u015f\u0131r. Taray\u0131c\u0131n\u0131zdan <code>http:\/\/<sunucu_ip_adresi>:8080<\/code> adresine giderek Jenkins aray\u00fcz\u00fcne eri\u015febilirsiniz. \u0130lk eri\u015fimde, Jenkins sizden bir ba\u015flang\u0131\u00e7 \u015fifresi isteyecektir. Bu \u015fifreyi a\u015fa\u011f\u0131daki komutla alabilirsiniz:<\/p>\n<pre><code>\n    sudo cat \/var\/lib\/jenkins\/secrets\/initialAdminPassword\n  <\/pre>\n<p><\/code><\/p>\n<p>\u015eifreyi girdikten sonra, \"Install suggested plugins\" se\u00e7ene\u011fini se\u00e7erek temel eklentileri kurabilir ve y\u00f6netici kullan\u0131c\u0131 olu\u015fturarak Jenkins kurulumunu tamamlayabilirsiniz.<\/p>\n<h3>Ad\u0131m 4: Selenium Grid Kurulumu ve Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>Selenium Grid, testlerinizi farkl\u0131 taray\u0131c\u0131lar ve i\u015fletim sistemleri \u00fczerinde paralel olarak \u00e7al\u0131\u015ft\u0131rman\u0131z\u0131 sa\u011flar. Bir hub (merkez) ve birden fazla node (d\u00fc\u011f\u00fcm) yap\u0131s\u0131ndan olu\u015fur. Hub, test isteklerini al\u0131r ve uygun node'lara y\u00f6nlendirir. En kolay kurulum y\u00f6ntemlerinden biri, Selenium Server JAR dosyas\u0131n\u0131 do\u011frudan \u00e7al\u0131\u015ft\u0131rmakt\u0131r. Chrome ve Firefox i\u00e7in s\u00fcr\u00fcc\u00fcleri (WebDriver) de indirmeniz gerekecektir.<\/p>\n<pre><code>\n    # Selenium Server JAR dosyas\u0131n\u0131 indir\n    wget https:\/\/selenium.dev\/downloads\/selenium-server-4.1.2.jar -O \/opt\/selenium-server.jar\n\n    # Chrome WebDriver (\u00f6rne\u011fin) indir\n    wget https:\/\/chromedriver.storage.googleapis.com\/97.0.4692.71\/chromedriver_linux64.zip -O \/tmp\/chromedriver.zip\n    sudo unzip \/tmp\/chromedriver.zip -d \/usr\/local\/bin\/\n    sudo chmod +x \/usr\/local\/bin\/chromedriver\n\n    # Firefox WebDriver (geckodriver) indir\n    wget https:\/\/github.com\/mozilla\/geckodriver\/releases\/download\/v0.30.0\/geckodriver-v0.30.0-linux64.tar.gz -O \/tmp\/geckodriver.tar.gz\n    sudo tar -xvzf \/tmp\/geckodriver.tar.gz -C \/usr\/local\/bin\/\n    sudo chmod +x \/usr\/local\/bin\/geckodriver\n\n    # Selenium Hub'\u0131 ba\u015flat\n    java -jar \/opt\/selenium-server.jar hub &\n\n    # Selenium Node'u ba\u015flat (ayn\u0131 makine \u00fczerinde \u00f6rnek)\n    java -Dwebdriver.chrome.driver=\/usr\/local\/bin\/chromedriver -Dwebdriver.gecko.driver=\/usr\/local\/bin\/geckodriver -jar \/opt\/selenium-server.jar node --hub http:\/\/localhost:4444\/ &\n  <\/pre>\n<p><\/code><\/p>\n<p>Yukar\u0131daki komutlar Selenium Hub'\u0131 4444 portunda ba\u015flat\u0131r ve ayn\u0131 makine \u00fczerinde bir node'u bu hub'a kaydeder. Hub ve node'lar\u0131n arka planda \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flamak i\u00e7in <code>&<\/code> i\u015fareti kullan\u0131lm\u0131\u015ft\u0131r. Taray\u0131c\u0131n\u0131zdan <code>http:\/\/<sunucu_ip_adresi>:4444\/ui<\/code> adresine giderek Grid aray\u00fcz\u00fcn\u00fc kontrol edebilir ve kay\u0131tl\u0131 node'lar\u0131 g\u00f6rebilirsiniz.<\/p>\n<h3>Ad\u0131m 5: Basit Bir Test Otomasyon Projesini Jenkins ile \u00c7al\u0131\u015ft\u0131rma<\/h3>\n<p>\u015eimdi Jenkins'i ve Selenium Grid'i entegre edelim. GitHub \u00fczerinde basit bir Selenium testi i\u00e7eren bir projeniz oldu\u011funu varsayal\u0131m. Jenkins'te yeni bir \"Freestyle Project\" veya \"Pipeline Project\" olu\u015fturabilirsiniz. Bir Pipeline projesi kullanarak, Git repodan kodu \u00e7ekip, testleri \u00e7al\u0131\u015ft\u0131r\u0131p sonu\u00e7lar\u0131 raporlayabiliriz.<\/p>\n<p>A\u015fa\u011f\u0131daki Jenkinsfile \u00f6rne\u011fi, bir Git deposundan kodu \u00e7eker, Maven ile projemizi derler ve Selenium testlerini \u00e7al\u0131\u015ft\u0131r\u0131r. Testlerinizde Selenium Grid'i kullanmak i\u00e7in RemoteWebDriver kullanman\u0131z ve hub adresini belirtmeniz \u00f6nemlidir.<\/p>\n<pre><code>\n    pipeline {\n        agent any\n        stages {\n            stage('Checkout Code') {\n                steps {\n                    git 'https:\/\/github.com\/your-org\/your-selenium-project.git' \/\/ Kendi projenizin URL'si\n                }\n            }\n            stage('Build Project') {\n                steps {\n                    sh 'mvn clean install -DskipTests'\n                }\n            }\n            stage('Run Selenium Tests') {\n                steps {\n                    sh 'mvn test -Dselenium.grid.url=http:\/\/localhost:4444\/wd\/hub' \/\/ Selenium Grid adresi\n                }\n            }\n            stage('Archive Reports') {\n                steps {\n                    archiveArtifacts artifacts: '<strong>\/surefire-reports\/*.xml, <\/strong>\/target\/screenshots\/*.png', fingerprint: true\n                }\n            }\n        }\n        post {\n            always {\n                echo 'Pipeline finished.'\n            }\n            failure {\n                echo 'Pipeline failed, check logs.'\n            }\n        }\n    }\n  <\/pre>\n<p><\/code><\/p>\n<p>Bu pipeline, projenizin k\u00f6k dizinindeki <code>Jenkinsfile<\/code> olarak kaydedilir. Jenkins'te yeni bir pipeline projesi olu\u015fturup, \"Pipeline script from SCM\" se\u00e7ene\u011fini kullanarak Git deposu URL'sini ve <code>Jenkinsfile<\/code> yolunu belirtmeniz yeterlidir. Bu sayede, her kod commit'inde veya manuel olarak tetiklendi\u011finde testleriniz otomatik olarak \u00e7al\u0131\u015facakt\u0131r. Jenkins aray\u00fcz\u00fcnde \"Console Output\" k\u0131sm\u0131ndan testlerin ilerleyi\u015fini ve sonu\u00e7lar\u0131n\u0131 g\u00f6zlemleyebilirsiniz. Bu yap\u0131, tam anlam\u0131yla kendi kontroll\u00fc on-prem test altyap\u0131n\u0131z\u0131 kurman\u0131n sa\u011flam bir ba\u015flang\u0131c\u0131d\u0131r.<\/p>\n<h2>On-Prem \u00c7\u00f6z\u00fcmlerde Test Y\u00f6netimi ve Raporlama Nas\u0131l Yap\u0131l\u0131r?<\/h2>\n<p>On-prem test altyap\u0131n\u0131z\u0131 kurmak bir ba\u015flang\u0131\u00e7t\u0131r; ancak as\u0131l de\u011fer, bu altyap\u0131y\u0131 etkin bir \u015fekilde y\u00f6netmek ve test sonu\u00e7lar\u0131n\u0131 anlaml\u0131 raporlara d\u00f6n\u00fc\u015ft\u00fcrmektir. Test y\u00f6netimi ve raporlama, test s\u00fcrecinin \u015feffafl\u0131\u011f\u0131n\u0131, izlenebilirli\u011fini ve genel kalitesini do\u011frudan etkileyen kritik unsurlard\u0131r. Kendi sunucular\u0131n\u0131zda bar\u0131nd\u0131rd\u0131\u011f\u0131n\u0131z \u00e7\u00f6z\u00fcmlerle dahi bu s\u00fcre\u00e7leri profesyonelce y\u00fcr\u00fctebilirsiniz.<\/p>\n<p><strong>Test Senaryosu Y\u00f6netimi:<\/strong> On-premise bir ortamda test senaryolar\u0131n\u0131z\u0131 y\u00f6netmek i\u00e7in \u00e7e\u015fitli ara\u00e7lar mevcuttur. En pop\u00fcler se\u00e7eneklerden biri, genel proje y\u00f6netimi arac\u0131 olan Jira'ya entegre olan eklentilerdir. \u00d6rne\u011fin, <strong>Zephyr Scale (eski ad\u0131 Test Management for Jira)<\/strong> veya <strong>Xray Test Management for Jira<\/strong>, do\u011frudan Jira i\u00e7inde test planlar\u0131 olu\u015fturman\u0131za, test durumlar\u0131n\u0131 yazman\u0131za, test d\u00f6ng\u00fclerini y\u00f6netmenize ve otomasyon sonu\u00e7lar\u0131n\u0131 Jira issue'lar\u0131 ile ili\u015fkilendirmenize olanak tan\u0131r. Bu sayede, gereksinimlerden test senaryolar\u0131na ve hatalara kadar t\u00fcm izlenebilirlik tek bir platformda sa\u011flan\u0131r. E\u011fer ba\u011f\u0131ms\u0131z bir \u00e7\u00f6z\u00fcme ihtiyac\u0131n\u0131z varsa, a\u00e7\u0131k kaynakl\u0131 <strong>TestLink<\/strong> gibi ara\u00e7lar, test senaryolar\u0131n\u0131, test y\u00fcr\u00fctmelerini ve kullan\u0131c\u0131 rollerini y\u00f6netmek i\u00e7in sa\u011flam bir temel sunar. TestLink'i kendi sunucunuzda kurabilir, birden fazla proje i\u00e7in kullanabilir ve otomasyon ara\u00e7lar\u0131n\u0131zla entegre edebilirsiniz. Bu ara\u00e7lar sayesinde, test s\u00fcre\u00e7leriniz disiplinli bir \u015fekilde ilerler ve hangi testlerin ne zaman, kim taraf\u0131ndan ve hangi sonu\u00e7larla y\u00fcr\u00fct\u00fcld\u00fc\u011f\u00fc her zaman net olur.<\/p>\n<p><strong>Raporlama Ara\u00e7lar\u0131 ve Entegrasyon:<\/strong> Testleriniz \u00e7al\u0131\u015ft\u0131ktan sonra elde edilen sonu\u00e7lar\u0131n anla\u015f\u0131l\u0131r ve detayl\u0131 bir \u015fekilde sunulmas\u0131, geli\u015ftiricilerin hatalar\u0131 h\u0131zl\u0131ca d\u00fczeltmesine ve y\u00f6neticilerin kalite durumu hakk\u0131nda bilgi edinmesine yard\u0131mc\u0131 olur. On-premise ortamda kullanabilece\u011finiz g\u00fc\u00e7l\u00fc raporlama ara\u00e7lar\u0131 mevcuttur. <strong>Allure Report<\/strong>, pop\u00fcler bir a\u00e7\u0131k kaynakl\u0131 raporlama arac\u0131d\u0131r ve \u00e7o\u011fu test \u00e7er\u00e7evesi (TestNG, JUnit, Pytest vb.) ile uyumludur. Test y\u00fcr\u00fctmelerinden XML veya JSON format\u0131nda toplanan verileri kullanarak, etkile\u015fimli, detayl\u0131 ve g\u00f6rsel olarak zengin HTML raporlar olu\u015fturur. Bu raporlar, test ad\u0131mlar\u0131n\u0131, ekran g\u00f6r\u00fcnt\u00fclerini, loglar\u0131 ve ortam bilgilerini i\u00e7erir. Bir di\u011fer se\u00e7enek ise <strong>ExtentReports<\/strong>'tur; bu k\u00fct\u00fcphane, test sonu\u00e7lar\u0131n\u0131 daha \u00f6zelle\u015ftirilebilir ve g\u00f6rsel olarak \u00e7ekici HTML raporlar\u0131na d\u00f6n\u00fc\u015ft\u00fcrmenizi sa\u011flar. \u00d6zellikle otomasyon \u00e7er\u00e7evelerinizle do\u011frudan entegre olarak, test ad\u0131mlar\u0131n\u0131n her birini ayr\u0131nt\u0131l\u0131 bir \u015fekilde raporlaman\u0131za yard\u0131mc\u0131 olur.<\/p>\n<p>Bu raporlama ara\u00e7lar\u0131n\u0131 CI\/CD pipeline'\u0131n\u0131za (\u00f6rn. Jenkins) entegre etmek olduk\u00e7a kolayd\u0131r. Jenkins'teki ilgili eklentileri (\u00f6rn. Allure Jenkins Plugin) kurarak, her test ko\u015fusunun ard\u0131ndan otomatik olarak raporlar\u0131n olu\u015fturulmas\u0131n\u0131 ve Jenkins aray\u00fcz\u00fcnden eri\u015filebilir olmas\u0131n\u0131 sa\u011flayabilirsiniz. \u00d6rne\u011fin, bir test otomasyon projenizdeki <code>pom.xml<\/code> veya <code>build.gradle<\/code> dosyan\u0131za Allure eklentisini ekleyerek, testlerin tamamlanmas\u0131n\u0131n ard\u0131ndan Allure sonu\u00e7 dosyalar\u0131n\u0131 (<code>allure-results<\/code>) olu\u015fturabilirsiniz. Ard\u0131ndan Jenkins pipeline'\u0131n\u0131zda bu sonu\u00e7lar\u0131 i\u015fleyerek raporlar\u0131 yay\u0131nlars\u0131n\u0131z. A\u015fa\u011f\u0131da, on-premise test y\u00f6netimi ve raporlama ara\u00e7lar\u0131n\u0131n bir kar\u015f\u0131la\u015ft\u0131rma tablosu bulunmaktad\u0131r:<\/p>\n<table>\n<thead>\n<tr>\n<th>Ara\u00e7 Ad\u0131<\/th>\n<th>A\u00e7\u0131klama<\/th>\n<th>On-Prem Destek<\/th>\n<th>\u00d6ne \u00c7\u0131kan \u00d6zellikler<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Jira (Xray \/ Zephyr Scale ile)<\/td>\n<td>Pop\u00fcler proje y\u00f6netimi arac\u0131, eklentilerle test y\u00f6netimi<\/td>\n<td>Evet (Jira Server s\u00fcr\u00fcm\u00fc ile)<\/td>\n<td>Gereksinimlerden testlere izlenebilirlik, otomasyon entegrasyonu, hata takibi<\/td>\n<\/tr>\n<tr>\n<td>TestLink<\/td>\n<td>A\u00e7\u0131k kaynakl\u0131, web tabanl\u0131 test y\u00f6netimi sistemi<\/td>\n<td>Evet<\/td>\n<td>Test plan\u0131, senaryo, ko\u015fu y\u00f6netimi, kullan\u0131c\u0131 rolleri, temel raporlama<\/td>\n<\/tr>\n<tr>\n<td>Allure Report<\/td>\n<td>Test sonu\u00e7lar\u0131n\u0131 g\u00f6rselle\u015ftiren zengin raporlama arac\u0131<\/td>\n<td>Evet (\u00c7\u0131kt\u0131lar sunucuda olu\u015fturulur)<\/td>\n<td>\u0130nteraktif HTML raporlar, ad\u0131m ad\u0131m loglar, ekran g\u00f6r\u00fcnt\u00fcleri, CI\/CD entegrasyonu<\/td>\n<\/tr>\n<tr>\n<td>ExtentReports<\/td>\n<td>Test sonu\u00e7lar\u0131n\u0131 \u00f6zelle\u015ftirilebilir HTML raporlar\u0131na d\u00f6n\u00fc\u015ft\u00fcren k\u00fct\u00fcphane<\/td>\n<td>Evet (Projenin par\u00e7as\u0131 olarak)<\/td>\n<td>Esnek API, anl\u0131k durum g\u00fcncellemeleri, \u00f6zel rapor g\u00f6r\u00fcn\u00fcmleri<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Bu ara\u00e7lar\u0131 do\u011fru bir \u015fekilde entegre ederek, kendi bar\u0131nd\u0131r\u0131lan test platformunuzda s\u00fcre\u00e7lerinizi \u015feffaf, verimli ve kontrol edilebilir hale getirebilirsiniz. Unutmay\u0131n, iyi bir raporlama, sadece hatalar\u0131 bulmakla kalmaz, ayn\u0131 zamanda test s\u00fcre\u00e7lerinizin genel sa\u011fl\u0131\u011f\u0131 hakk\u0131nda da de\u011ferli bilgiler sunar.<\/p>\n<h3>Performans ve G\u00fcvenlik Optimizasyonu \u0130\u00e7in \u0130pu\u00e7lar\u0131<\/h3>\n<p>On-premise test ortamlar\u0131n\u0131n verimlili\u011fi ve g\u00fcvenli\u011fi, s\u00fcrekli optimizasyon gerektiren iki \u00f6nemli aland\u0131r. Kendi altyap\u0131n\u0131z\u0131 y\u00f6netirken bu konulara dikkat etmek, test s\u00fcre\u00e7lerinizin sorunsuz ilerlemesini ve hassas verilerinizin korunmas\u0131n\u0131 sa\u011flar.<\/p>\n<h4>Performans Optimizasyonu<\/h4>\n<p>Testlerin h\u0131zl\u0131 ve g\u00fcvenilir bir \u015fekilde \u00e7al\u0131\u015fmas\u0131 i\u00e7in kaynak y\u00f6netimi hayati \u00f6neme sahiptir. \u0130lk olarak, <strong>kaynak y\u00f6netimi<\/strong> konusunda proaktif olmal\u0131s\u0131n\u0131z. Test sunucular\u0131n\u0131z\u0131n CPU, RAM ve disk I\/O kullan\u0131m\u0131n\u0131 d\u00fczenli olarak izleyin. E\u011fer Selenium Grid kullan\u0131yorsan\u0131z, her bir node'un yeterli kayna\u011fa sahip oldu\u011fundan emin olun. Taray\u0131c\u0131lar ciddi miktarda RAM t\u00fcketebilir, bu nedenle ayn\u0131 anda \u00e7al\u0131\u015facak paralel taray\u0131c\u0131 oturumu say\u0131s\u0131n\u0131 planlarken RAM kapasitenizi g\u00f6z \u00f6n\u00fcnde bulundurun. A\u015f\u0131r\u0131 y\u00fcklenen bir node, testlerin yava\u015flamas\u0131na veya ba\u015far\u0131s\u0131z olmas\u0131na neden olabilir. \u0130kinci olarak, <strong>paralel test \u00e7al\u0131\u015ft\u0131rma<\/strong> kapasitesini art\u0131rmak i\u00e7in Selenium Grid mimarinizi do\u011fru \u00f6l\u00e7eklendirin. Farkl\u0131 makineler \u00fczerinde birden fazla node kurarak veya Docker konteynerleri kullanarak izole test ortamlar\u0131 sa\u011flayabilir ve test y\u00fcr\u00fctme s\u00fcresini \u00f6nemli \u00f6l\u00e7\u00fcde azaltabilirsiniz. \u00dc\u00e7\u00fcnc\u00fc olarak, veritaban\u0131 i\u015flemlerini optimize etmek, \u00f6zellikle entegrasyon veya performans testleri yaparken \u00f6nemlidir. Test veritabanlar\u0131n\u0131z\u0131n dizinleri do\u011fru yap\u0131land\u0131r\u0131lm\u0131\u015f m\u0131? Gereksiz sorgulardan ka\u00e7\u0131n\u0131l\u0131yor mu? Bu sorular\u0131n cevaplar\u0131 performans\u0131 do\u011frudan etkiler.<\/p>\n<div class=\"interactive-tip\">\n    <strong>Uzman \u0130pucu: Sanal Makine Kaynaklar\u0131n\u0131 Ak\u0131ll\u0131ca Ay\u0131r\u0131n!<\/strong><br \/>\n    Test sunucular\u0131n\u0131z\u0131 sanal makineler \u00fczerinde bar\u0131nd\u0131r\u0131yorsan\u0131z, CPU ve RAM tahsisi konusunda dikkatli olun. A\u015f\u0131r\u0131 kaynak sa\u011flamak israfa yol a\u00e7arken, yetersiz kaynak testlerin yava\u015flamas\u0131na neden olur. Test ortamlar\u0131n\u0131z\u0131n y\u00fck alt\u0131nda nas\u0131l davrand\u0131\u011f\u0131n\u0131 anlamak i\u00e7in periyodik y\u00fck testleri yap\u0131n ve kaynaklar\u0131 bu verilere g\u00f6re ayarlay\u0131n. \u00d6rne\u011fin, ayn\u0131 anda 20 Selenium testini \u00e7al\u0131\u015ft\u0131rmak i\u00e7in her testin ortalama 1GB RAM ve 0.5 CPU \u00e7ekirde\u011fi t\u00fcketti\u011fini varsayarak, toplamda 20GB RAM ve 10 CPU \u00e7ekirde\u011fi gibi bir ba\u015flang\u0131\u00e7 tahmini yapabilirsiniz.\n  <\/div>\n<h4>G\u00fcvenlik Optimizasyonu<\/h4>\n<p>On-prem test ortamlar\u0131nda g\u00fcvenlik, \u00f6zellikle hassas verilerle \u00e7al\u0131\u015f\u0131rken \u00f6ncelikli bir konudur. \u0130lk olarak, <strong>a\u011f g\u00fcvenli\u011fini<\/strong> s\u0131k\u0131 tutun. Test sunucular\u0131n\u0131z\u0131 ayr\u0131 bir VLAN'a veya a\u011f segmentine yerle\u015ftirerek di\u011fer \u00fcretim veya geli\u015ftirme ortamlar\u0131ndan izole edin. Gerekli olmayan t\u00fcm portlar\u0131 kapat\u0131n ve g\u00fcvenlik duvar\u0131 (firewall) kurallar\u0131n\u0131 en az ayr\u0131cal\u0131k ilkesine g\u00f6re yap\u0131land\u0131r\u0131n. Yaln\u0131zca Jenkins, Selenium Grid veya test y\u00f6netim ara\u00e7lar\u0131na eri\u015fim i\u00e7in gerekli portlar\u0131 a\u00e7\u0131n. \u0130kinci olarak, <strong>eri\u015fim kontrol\u00fcn\u00fc<\/strong> g\u00fc\u00e7lendirin. T\u00fcm kullan\u0131c\u0131lar i\u00e7in g\u00fc\u00e7l\u00fc \u015fifre politikalar\u0131 uygulay\u0131n ve iki fakt\u00f6rl\u00fc kimlik do\u011frulama (2FA) kullan\u0131n. Jenkins gibi ara\u00e7larda kullan\u0131c\u0131 ve rol tabanl\u0131 yetkilendirmeleri titizlikle yap\u0131land\u0131r\u0131n, b\u00f6ylece her kullan\u0131c\u0131n\u0131n sadece ihtiyac\u0131 olan kaynaklara eri\u015fimi olur. \u00dc\u00e7\u00fcnc\u00fc olarak, t\u00fcm yaz\u0131l\u0131m bile\u015fenlerini (i\u015fletim sistemi, Java, Jenkins, taray\u0131c\u0131lar, WebDriver'lar) <strong>d\u00fczenli olarak g\u00fcncelleyin<\/strong>. G\u00fcvenlik a\u00e7\u0131klar\u0131 genellikle eski yaz\u0131l\u0131m s\u00fcr\u00fcmlerinde bulunur. Son olarak, kapsaml\u0131 bir <strong>yedekleme ve kurtarma stratejisi<\/strong> olu\u015fturun. Test ortam\u0131n\u0131zdaki \u00f6nemli yap\u0131land\u0131rma dosyalar\u0131n\u0131, veritabanlar\u0131n\u0131 ve test verilerini d\u00fczenli olarak yedekleyin. Bir felaket durumunda h\u0131zl\u0131 bir \u015fekilde kurtarma yapabilmek i\u00e7in yedekleri test etmeyi unutmay\u0131n. Bu ad\u0131mlar, on-prem test altyap\u0131n\u0131z\u0131n hem performansl\u0131 hem de g\u00fcvenli bir \u015fekilde \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flayacakt\u0131r.<\/p>\n<h3>Mobil Test ve Sanalla\u015ft\u0131rma Entegrasyonu: \u0130leri Seviye Uygulamalar<\/h3>\n<p>Modern yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde mobil uygulamalar\u0131n testi giderek daha kritik hale gelmektedir. On-premise bir test ortam\u0131nda mobil testleri entegre etmek, ek katmanlar ve \u00f6zel yakla\u015f\u0131mlar gerektirir. Ayn\u0131 zamanda, sanalla\u015ft\u0131rma ve konteyner teknolojileri, test altyap\u0131s\u0131n\u0131n esnekli\u011fini ve verimlili\u011fini art\u0131rmada kilit rol oynar.<\/p>\n<h4>Mobil Test Entegrasyonu<\/h4>\n<p>On-premise bir ortamda mobil testleri y\u00fcr\u00fctmek i\u00e7in genellikle iki ana y\u00f6ntem kullan\u0131l\u0131r: fiziksel cihaz laboratuvarlar\u0131 veya sanal cihaz em\u00fclat\u00f6rleri\/sim\u00fclat\u00f6rleri. Fiziksel cihaz laboratuvarlar\u0131, ger\u00e7ek cihazlar\u0131n performans\u0131n\u0131 ve kullan\u0131c\u0131 deneyimini do\u011frudan test etmek i\u00e7in idealdir. Bu laboratuvarlar, \u00e7e\u015fitli mobil cihazlar\u0131 (telefonlar, tabletler) i\u00e7erir ve genellikle USB hub'lar\u0131 veya \u00f6zel cihaz y\u00f6netim sistemleri arac\u0131l\u0131\u011f\u0131yla bir sunucuya ba\u011flan\u0131r. <strong>Appium<\/strong>, bu cihazlar \u00fczerinde test otomasyonu yapmak i\u00e7in kullan\u0131lan pop\u00fcler bir a\u00e7\u0131k kaynakl\u0131 ara\u00e7t\u0131r. Appium'u on-prem sunucular\u0131n\u0131za kurarak, Python, Java, C# gibi dillerde yaz\u0131lm\u0131\u015f test script'lerini ger\u00e7ek Android veya iOS cihazlar\u0131 \u00fczerinde \u00e7al\u0131\u015ft\u0131rabilirsiniz. Bu kurulum, cihazlar\u0131n s\u00fcrekli ba\u011fl\u0131 ve eri\u015filebilir olmas\u0131n\u0131 gerektirir.<\/p>\n<p>Alternatif olarak, \u00f6zellikle daha h\u0131zl\u0131 geri bildirim d\u00f6ng\u00fcleri ve maliyet etkinli\u011fi arayan ekipler i\u00e7in sanal cihaz em\u00fclat\u00f6rleri (Android Studio i\u00e7in AVD Manager) veya sim\u00fclat\u00f6rleri (Xcode i\u00e7in iOS Simulator) kullan\u0131labilir. Bu sanal cihazlar, test sunucusu \u00fczerinde \u00e7al\u0131\u015f\u0131r ve Appium arac\u0131l\u0131\u011f\u0131yla kontrol edilebilir. Sanal cihazlar, farkl\u0131 ekran boyutlar\u0131, Android s\u00fcr\u00fcmleri veya iOS s\u00fcr\u00fcmleri \u00fczerinde h\u0131zl\u0131ca test yapma esnekli\u011fi sunar. Her iki yakla\u015f\u0131m da kendi avantajlar\u0131na sahiptir ve kurulu\u015fun b\u00fct\u00e7esi, test kapsam\u0131 ve gereksinimlerine g\u00f6re tercih edilmelidir.<\/p>\n<h4>Sanalla\u015ft\u0131rma ve Konteyner Entegrasyonu<\/h4>\n<p>Test altyap\u0131s\u0131n\u0131n esnekli\u011fini, izolasyonunu ve \u00f6l\u00e7eklenebilirli\u011fini art\u0131rmak i\u00e7in sanalla\u015ft\u0131rma ve konteyner teknolojileri on-premise ortamlarda vazge\u00e7ilmezdir. <strong>Docker<\/strong>, test ortamlar\u0131n\u0131n h\u0131zl\u0131 bir \u015fekilde olu\u015fturulmas\u0131 ve da\u011f\u0131t\u0131lmas\u0131 i\u00e7in m\u00fckemmel bir ara\u00e7t\u0131r. Selenium Grid'in Docker konteynerlerinde \u00e7al\u0131\u015ft\u0131r\u0131lmas\u0131, testlerin farkl\u0131 taray\u0131c\u0131 s\u00fcr\u00fcmleriyle izole edilmi\u015f ortamlarda \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar ve kaynak kullan\u0131m\u0131n\u0131 optimize eder. \u00d6rne\u011fin, bir test ko\u015fusu i\u00e7in Chrome 95, di\u011feri i\u00e7in Firefox 90 taray\u0131c\u0131lar\u0131na ihtiyac\u0131n\u0131z varsa, her biri i\u00e7in ayr\u0131 Docker konteynerleri olu\u015fturabilir ve kolayca y\u00f6netebilirsiniz. Bu, ana sunucuyu karma\u015f\u0131k ba\u011f\u0131ml\u0131l\u0131klarla kirletmeden test ortamlar\u0131n\u0131 \"bir kullan-at\" felsefesiyle y\u00f6netmenize olanak tan\u0131r.<\/p>\n<p>A\u015fa\u011f\u0131da, Docker Compose kullanarak Selenium Grid'i (hub ve iki node) h\u0131zl\u0131ca nas\u0131l kurabilece\u011finize dair bir \u00f6rnek verilmi\u015ftir. Bu, t\u00fcm bile\u015fenlerin tek bir komutla aya\u011fa kalkmas\u0131n\u0131 sa\u011flar:<\/p>\n<pre><code>\n    version: \"3.8\"\n    services:\n      selenium-hub:\n        image: selenium\/hub:4.1.2-20220131\n        container_name: selenium-hub\n        ports:\n          - \"4444:4444\"\n          - \"7900:7900\" # VNC port for viewing browser\n      chrome:\n        image: selenium\/node-chrome:4.1.2-20220131\n        container_name: selenium-node-chrome\n        volumes:\n          - \/dev\/shm:\/dev\/shm\n        depends_on:\n          - selenium-hub\n        environment:\n          - SE_EVENT_BUS_HOST=selenium-hub\n          - SE_EVENT_BUS_PUBLISH_PORT=4442\n          - SE_EVENT_BUS_SUBSCRIBE_PORT=4443\n          - SE_NODE_OVERRIDE_MAX_SESSIONS=true\n          - SE_NODE_MAX_SESSIONS=5 # Maksimum 5 paralel Chrome testi\n          - SE_VNC_ENABLED=true\n      firefox:\n        image: selenium\/node-firefox:4.1.2-20220131\n        container_name: selenium-node-firefox\n        volumes:\n          - \/dev\/shm:\/dev\/shm\n        depends_on:\n          - selenium-hub\n        environment:\n          - SE_EVENT_BUS_HOST=selenium-hub\n          - SE_EVENT_BUS_PUBLISH_PORT=4442\n          - SE_EVENT_BUS_SUBSCRIBE_PORT=4443\n          - SE_NODE_OVERRIDE_MAX_SESSIONS=true\n          - SE_NODE_MAX_SESSIONS=5 # Maksimum 5 paralel Firefox testi\n          - SE_VNC_ENABLED=true\n  <\/pre>\n<p><\/code><\/p>\n<p>Bu <code>docker-compose.yml<\/code> dosyas\u0131n\u0131 sunucunuzda kaydedip, <code><\/p>\n<pre><code>sudo docker-compose up -d<\/code><\/pre>\n<p><\/code> komutuyla \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zda, Selenium Grid altyap\u0131n\u0131z an\u0131nda haz\u0131r hale gelir. Konteynerler, farkl\u0131 ba\u011f\u0131ml\u0131l\u0131klara sahip test ortamlar\u0131n\u0131 birbirinden izole ederken, genel altyap\u0131n\u0131z\u0131n daha kararl\u0131 ve y\u00f6netilebilir olmas\u0131na olanak tan\u0131r. Ayr\u0131ca, <strong>Kubernetes<\/strong> gibi konteyner orkestrasyon ara\u00e7lar\u0131, daha b\u00fcy\u00fck \u00f6l\u00e7ekli ve dinamik test ortamlar\u0131n\u0131 y\u00f6netmek i\u00e7in kullan\u0131labilir. Bu sayede, test talebine g\u00f6re otomatik olarak \u00f6l\u00e7eklenen bir test altyap\u0131s\u0131 kurabilirsiniz. Mobil testleri ve sanalla\u015ft\u0131rma teknolojilerini on-premise test ortam\u0131n\u0131za entegre etmek, test s\u00fcre\u00e7lerinizin kapsam\u0131n\u0131 geni\u015fletirken ayn\u0131 zamanda operasyonel verimlili\u011finizi de art\u0131racakt\u0131r.<\/p>\n<h2>On-Prem Test Ortamlar\u0131n\u0131n Gelece\u011fi ve S\u00fcrd\u00fcr\u00fclebilirlik<\/h2>\n<p>On-premise test platformlar\u0131, dijital d\u00f6n\u00fc\u015f\u00fcm \u00e7a\u011f\u0131nda bile \u00f6nemini korumaya devam ediyor. Gelecekte de, \u00f6zellikle belirli sekt\u00f6rlerdeki s\u0131k\u0131 g\u00fcvenlik ve uyumluluk gereksinimleri nedeniyle bu t\u00fcr \u00e7\u00f6z\u00fcmlere olan ihtiya\u00e7 s\u00fcrecektir. Ancak bu durum, on-premise yakla\u015f\u0131mlar\u0131n izole kalaca\u011f\u0131 anlam\u0131na gelmiyor; aksine, bulut teknolojileriyle entegre olabilen hibrit modeller ve s\u00fcrekli geli\u015fen a\u00e7\u0131k kaynak ekosistemleri, on-premise test ortamlar\u0131n\u0131n s\u00fcrd\u00fcr\u00fclebilirli\u011fini ve rekabet\u00e7ili\u011fini art\u0131racakt\u0131r.<\/p>\n<p>Gelecekte, <strong>hibrit yakla\u015f\u0131mlar<\/strong> on-prem test stratejilerinin \u00f6nemli bir par\u00e7as\u0131 haline gelecek. Baz\u0131 test t\u00fcrleri (\u00f6rne\u011fin, hassas veri i\u00e7eren g\u00fcvenlik testleri veya reg\u00fclasyona tabi performans testleri) kendi sunucular\u0131n\u0131zda kalmaya devam ederken, daha genel ve az hassas olan fonksiyonel veya y\u00fck testleri bulut tabanl\u0131 \u00e7\u00f6z\u00fcmlere ta\u015f\u0131nabilir. Bu, bulutun esnekli\u011finden ve \u00f6l\u00e7eklenebilirli\u011finden faydalan\u0131rken, kritik verileri ve s\u00fcre\u00e7leri \u015firket i\u00e7inde tutman\u0131n avantajlar\u0131n\u0131 birle\u015ftirir. \u00d6rne\u011fin, bir finans kurumu, yeni bir uygulama i\u00e7in g\u00fcvenlik testlerini kendi sunucular\u0131nda yaparken, taray\u0131c\u0131 uyumluluk testleri i\u00e7in AWS Device Farm veya BrowserStack gibi bulut tabanl\u0131 platformlar\u0131 kullanabilir. Bu strateji, maliyetleri optimize etme, riski da\u011f\u0131tma ve test kapsam\u0131n\u0131 geni\u015fletme imkan\u0131 sunar.<\/p>\n<p><strong>A\u00e7\u0131k kaynak \u00e7\u00f6z\u00fcmlerin rol\u00fc<\/strong>, on-premise test ortamlar\u0131n\u0131n gelece\u011finde kritik bir yer tutmaktad\u0131r. Jenkins, Selenium, Appium, Docker, Allure Report gibi ara\u00e7lar, lisans maliyetleri olmadan g\u00fc\u00e7l\u00fc ve \u00f6zelle\u015ftirilebilir test altyap\u0131lar\u0131 kurma imkan\u0131 sunar. A\u00e7\u0131k kaynak topluluklar\u0131 sayesinde bu ara\u00e7lar s\u00fcrekli olarak geli\u015fmekte, yeni \u00f6zellikler eklenmekte ve g\u00fcvenlik a\u00e7\u0131klar\u0131 h\u0131zla kapat\u0131lmaktad\u0131r. Bu da on-premise platformlar\u0131n g\u00fcncel kalmas\u0131n\u0131 ve modern test ihtiya\u00e7lar\u0131n\u0131 kar\u015f\u0131lamas\u0131n\u0131 sa\u011flar. Ayr\u0131ca, a\u00e7\u0131k kaynak \u00e7\u00f6z\u00fcmler, \u015firketlerin kendi \u00f6zel ihtiya\u00e7lar\u0131na g\u00f6re ara\u00e7lar\u0131 kolayca de\u011fi\u015ftirmesine veya geli\u015ftirmesine olanak tan\u0131r, bu da tam kontrol ve esneklik aray\u0131\u015f\u0131nda olan kurulu\u015flar i\u00e7in b\u00fcy\u00fck bir avantajd\u0131r.<\/p>\n<p>Son olarak, <strong>DevOps k\u00fclt\u00fcr\u00fc ile entegrasyon<\/strong>, on-premise test ortamlar\u0131n\u0131n s\u00fcrd\u00fcr\u00fclebilirli\u011fi i\u00e7in olmazsa olmazd\u0131r. Test, geli\u015ftirme ve operasyon ekipleri aras\u0131ndaki i\u015fbirli\u011fini g\u00fc\u00e7lendirerek, test s\u00fcre\u00e7lerini geli\u015ftirme ya\u015fam d\u00f6ng\u00fcs\u00fcn\u00fcn daha erken a\u015famalar\u0131na entegre etmek (shift-left testing) on-prem altyap\u0131n\u0131n etkinli\u011fini art\u0131r\u0131r. S\u00fcrekli Entegrasyon (CI) ve S\u00fcrekli Da\u011f\u0131t\u0131m (CD) pipeline'lar\u0131, otomasyon, konteynerizasyon ve merkezi loglama gibi DevOps pratikleri, on-premise test ortamlar\u0131n\u0131n daha verimli, g\u00fcvenilir ve s\u00fcrd\u00fcr\u00fclebilir olmas\u0131na katk\u0131da bulunur. Kapsaml\u0131 izleme ve metrik toplama (monitoring), on-prem altyap\u0131n\u0131n performans\u0131n\u0131 ve sa\u011fl\u0131\u011f\u0131n\u0131 s\u00fcrekli denetleyerek potansiyel sorunlar\u0131n \u00f6nceden tespit edilmesini sa\u011flar. Bu sayede, on-prem test ortamlar\u0131 sadece bir ihtiya\u00e7 olmaktan \u00e7\u0131k\u0131p, yaz\u0131l\u0131m kalitesini s\u00fcrekli art\u0131ran g\u00fc\u00e7l\u00fc bir stratejik varl\u0131k haline gelebilir.<\/p>\n<h2>Sonu\u00e7: Kendi Test Altyap\u0131n\u0131zla Gelece\u011fe Y\u00f6nelik Bir Yat\u0131r\u0131m Yap\u0131n<\/h2>\n<p>\u00d6zetle, kendi b\u00fcnyenizde bar\u0131nd\u0131r\u0131lan (on-premise) test platformlar\u0131, \u00f6zellikle veri g\u00fcvenli\u011fi, yasal uyumluluk ve maliyet kontrol\u00fc konular\u0131nda kritik endi\u015feleri olan kurulu\u015flar i\u00e7in paha bi\u00e7ilmez avantajlar sunar. Bu rehber boyunca, on-prem test intra ara\u00e7lar\u0131n\u0131n temel kavramlar\u0131ndan, Jenkins ve Selenium Grid gibi pop\u00fcler \u00e7\u00f6z\u00fcmlerle ad\u0131m ad\u0131m kurulumuna, test y\u00f6netimi ve raporlama stratejilerine, performans ve g\u00fcvenlik optimizasyonlar\u0131na, mobil test entegrasyonuna ve sanalla\u015ft\u0131rma uygulamalar\u0131na kadar bir\u00e7ok konuyu ele ald\u0131k. Kendi sunucular\u0131n\u0131zda kurdu\u011funuz bu altyap\u0131lar, size test s\u00fcre\u00e7leriniz \u00fczerinde tam bir denetim sa\u011flarken, ayn\u0131 zamanda kurumunuzun \u00f6zel ihtiya\u00e7lar\u0131na g\u00f6re esneklik ve \u00f6zelle\u015ftirme imkanlar\u0131 sunar. Ba\u015flang\u0131\u00e7ta biraz \u00e7aba gerektirse de, uzun vadede bu yat\u0131r\u0131m, kurumunuzun yaz\u0131l\u0131m kalitesini g\u00fcvence alt\u0131na alacak ve stratejik hedeflerine ula\u015fmas\u0131na yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<ul>\n<li>\n      <strong>On-prem test platformlar\u0131n\u0131n ba\u015fl\u0131ca avantajlar\u0131 nelerdir?<\/strong><br \/>\n      Ba\u015fl\u0131ca avantajlar aras\u0131nda tam veri g\u00fcvenli\u011fi ve gizlili\u011fi, reg\u00fclasyonlara uyumluluk kolayl\u0131\u011f\u0131, test altyap\u0131s\u0131 \u00fczerinde tam kontrol, \u00f6zel ihtiya\u00e7lara g\u00f6re y\u00fcksek \u00f6zelle\u015ftirilebilirlik ve uzun vadede daha \u00f6ng\u00f6r\u00fclebilir maliyetler yer al\u0131r.\n    <\/li>\n<li>\n      <strong>On-prem bir test ortam\u0131 kurmak ne kadar zor ve ne kadar zaman al\u0131r?<\/strong><br \/>\n      Zorluk seviyesi ve s\u00fcre, kurumunuzun mevcut IT altyap\u0131s\u0131na, ekibinizin teknik yetkinli\u011fine ve kurmak istedi\u011finiz sistemin karma\u015f\u0131kl\u0131\u011f\u0131na ba\u011fl\u0131d\u0131r. Temel bir Jenkins ve Selenium Grid kurulumu birka\u00e7 g\u00fcnden birka\u00e7 haftaya kadar s\u00fcrebilirken, kapsaml\u0131 bir mobil test laboratuvar\u0131 ve Kubernetes entegrasyonu gibi ileri seviye kurulumlar daha uzun s\u00fcrebilir.\n    <\/li>\n<li>\n      <strong>Bulut tabanl\u0131 test \u00e7\u00f6z\u00fcmleri yerine on-prem tercih etmek her zaman iyi bir fikir midir?<\/strong><br \/>\n      Her zaman de\u011fil. On-prem \u00e7\u00f6z\u00fcmler, y\u00fcksek g\u00fcvenlik gereksinimleri, hassas veri i\u015fleme ve s\u0131k\u0131 reg\u00fclasyonlar alt\u0131ndaki sekt\u00f6rler i\u00e7in idealdir. Ancak, daha k\u00fc\u00e7\u00fck ekipler, h\u0131zl\u0131 \u00f6l\u00e7eklenme ihtiyac\u0131 olan startup'lar veya y\u00fcksek ba\u015flang\u0131\u00e7 maliyetlerinden ka\u00e7\u0131nmak isteyenler i\u00e7in bulut \u00e7\u00f6z\u00fcmleri daha uygun olabilir. Hibrit yakla\u015f\u0131mlar da s\u0131k\u00e7a tercih edilen bir yoldur.\n    <\/li>\n<li>\n      <strong>On-prem test ortamlar\u0131n\u0131n g\u00fcvenli\u011fini sa\u011flamak i\u00e7in nelere dikkat etmeliyim?<\/strong><br \/>\n      A\u011f izolasyonu (VLAN), g\u00fcvenlik duvar\u0131 kurallar\u0131, g\u00fc\u00e7l\u00fc eri\u015fim kontrolleri (2FA ve rol tabanl\u0131 yetkilendirme), t\u00fcm yaz\u0131l\u0131mlar\u0131n d\u00fczenli g\u00fcncellemeleri ve kapsaml\u0131 bir yedekleme\/kurtarma stratejisi temel g\u00fcvenlik \u00f6nlemleridir.\n    <\/li>\n<li>\n      <strong>Mevcut test otomasyon projelerimi on-prem ortama ta\u015f\u0131mak m\u00fcmk\u00fcn m\u00fcd\u00fcr?<\/strong><br \/>\n      Evet, \u00e7o\u011fu test otomasyon projesi (Selenium, Appium, Playwright vb.) on-prem ortama kolayca ta\u015f\u0131nabilir. Genellikle, otomasyon kodunuzdaki test ortam\u0131 URL'lerini (\u00f6rne\u011fin, Selenium Grid hub adresi) on-prem altyap\u0131n\u0131z\u0131n adresleriyle g\u00fcncellemeniz yeterli olacakt\u0131r. CI\/CD pipeline'lar\u0131n\u0131z\u0131n da yeni on-prem ara\u00e7lar\u0131 i\u015faret edecek \u015fekilde yap\u0131land\u0131r\u0131lmas\u0131 gerekir.\n    <\/li>\n<\/ul>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Veri g\u00fcvenli\u011fi endi\u015feleri, kat\u0131 reg\u00fclasyonlar veya bulut maliyetlerinin \u00f6ng\u00f6r\u00fclemezli\u011fi nedeniyle test s\u00fcre\u00e7lerinizi kendi sunucular\u0131n\u0131zda bar\u0131nd\u0131rmak ister misiniz? Bu&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-33110","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>On-Prem Test Intra Tools: Kendi Bar\u0131nd\u0131r\u0131lan Test Platformlar\u0131na Eksiksiz K\u0131lavuz<\/title>\n<meta name=\"description\" content=\"Veri g\u00fcvenli\u011fi endi\u015feleri, kat\u0131 reg\u00fclasyonlar veya bulut maliyetlerinin \u00f6ng\u00f6r\u00fclemezli\u011fi nedeniyle test s\u00fcre\u00e7lerinizi kendi sunucular\u0131n\u0131zda bar\u0131nd\u0131rmak ister misiniz? Bu kapsaml\u0131 rehber, on-premise test ara\u00e7lar\u0131n\u0131n kurulumu, y\u00f6netimi ve optimizasyonu hakk\u0131nda bilmeniz gereken her \u015feyi ad\u0131m ad\u0131m a\u00e7\u0131kl\u0131yor, b\u00f6ylece test altyap\u0131n\u0131z \u00fczerinde tam kontrol sa\u011flayabilirsiniz.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"On-Prem Test Intra Tools: Kendi Bar\u0131nd\u0131r\u0131lan Test Platformlar\u0131na Eksiksiz K\u0131lavuz\" \/>\n<meta property=\"og:description\" content=\"Veri g\u00fcvenli\u011fi endi\u015feleri, kat\u0131 reg\u00fclasyonlar veya bulut maliyetlerinin \u00f6ng\u00f6r\u00fclemezli\u011fi nedeniyle test s\u00fcre\u00e7lerinizi kendi sunucular\u0131n\u0131zda bar\u0131nd\u0131rmak ister misiniz? Bu kapsaml\u0131 rehber, on-premise test ara\u00e7lar\u0131n\u0131n kurulumu, y\u00f6netimi ve optimizasyonu hakk\u0131nda bilmeniz gereken her \u015feyi ad\u0131m ad\u0131m a\u00e7\u0131kl\u0131yor, b\u00f6ylece test altyap\u0131n\u0131z \u00fczerinde tam kontrol sa\u011flayabilirsiniz.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-10-29T17:02:31+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"26 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"On-Prem Test Intra Tools: Kendi Bar\u0131nd\u0131r\u0131lan Test Platformlar\u0131na Eksiksiz K\u0131lavuz\",\"datePublished\":\"2025-10-29T17:02:31+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/\"},\"wordCount\":4797,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/\",\"name\":\"On-Prem Test Intra Tools: Kendi Bar\u0131nd\u0131r\u0131lan Test Platformlar\u0131na Eksiksiz K\u0131lavuz\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-10-29T17:02:31+00:00\",\"description\":\"Veri g\u00fcvenli\u011fi endi\u015feleri, kat\u0131 reg\u00fclasyonlar veya bulut maliyetlerinin \u00f6ng\u00f6r\u00fclemezli\u011fi nedeniyle test s\u00fcre\u00e7lerinizi kendi sunucular\u0131n\u0131zda bar\u0131nd\u0131rmak ister misiniz? Bu kapsaml\u0131 rehber, on-premise test ara\u00e7lar\u0131n\u0131n kurulumu, y\u00f6netimi ve optimizasyonu hakk\u0131nda bilmeniz gereken her \u015feyi ad\u0131m ad\u0131m a\u00e7\u0131kl\u0131yor, b\u00f6ylece test altyap\u0131n\u0131z \u00fczerinde tam kontrol sa\u011flayabilirsiniz.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"On-Prem Test Intra Tools: Kendi Bar\u0131nd\u0131r\u0131lan Test Platformlar\u0131na Eksiksiz K\u0131lavuz\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"On-Prem Test Intra Tools: Kendi Bar\u0131nd\u0131r\u0131lan Test Platformlar\u0131na Eksiksiz K\u0131lavuz","description":"Veri g\u00fcvenli\u011fi endi\u015feleri, kat\u0131 reg\u00fclasyonlar veya bulut maliyetlerinin \u00f6ng\u00f6r\u00fclemezli\u011fi nedeniyle test s\u00fcre\u00e7lerinizi kendi sunucular\u0131n\u0131zda bar\u0131nd\u0131rmak ister misiniz? Bu kapsaml\u0131 rehber, on-premise test ara\u00e7lar\u0131n\u0131n kurulumu, y\u00f6netimi ve optimizasyonu hakk\u0131nda bilmeniz gereken her \u015feyi ad\u0131m ad\u0131m a\u00e7\u0131kl\u0131yor, b\u00f6ylece test altyap\u0131n\u0131z \u00fczerinde tam kontrol sa\u011flayabilirsiniz.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/","og_locale":"tr_TR","og_type":"article","og_title":"On-Prem Test Intra Tools: Kendi Bar\u0131nd\u0131r\u0131lan Test Platformlar\u0131na Eksiksiz K\u0131lavuz","og_description":"Veri g\u00fcvenli\u011fi endi\u015feleri, kat\u0131 reg\u00fclasyonlar veya bulut maliyetlerinin \u00f6ng\u00f6r\u00fclemezli\u011fi nedeniyle test s\u00fcre\u00e7lerinizi kendi sunucular\u0131n\u0131zda bar\u0131nd\u0131rmak ister misiniz? Bu kapsaml\u0131 rehber, on-premise test ara\u00e7lar\u0131n\u0131n kurulumu, y\u00f6netimi ve optimizasyonu hakk\u0131nda bilmeniz gereken her \u015feyi ad\u0131m ad\u0131m a\u00e7\u0131kl\u0131yor, b\u00f6ylece test altyap\u0131n\u0131z \u00fczerinde tam kontrol sa\u011flayabilirsiniz.","og_url":"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-10-29T17:02:31+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"26 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"On-Prem Test Intra Tools: Kendi Bar\u0131nd\u0131r\u0131lan Test Platformlar\u0131na Eksiksiz K\u0131lavuz","datePublished":"2025-10-29T17:02:31+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/"},"wordCount":4797,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/","url":"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/","name":"On-Prem Test Intra Tools: Kendi Bar\u0131nd\u0131r\u0131lan Test Platformlar\u0131na Eksiksiz K\u0131lavuz","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-10-29T17:02:31+00:00","description":"Veri g\u00fcvenli\u011fi endi\u015feleri, kat\u0131 reg\u00fclasyonlar veya bulut maliyetlerinin \u00f6ng\u00f6r\u00fclemezli\u011fi nedeniyle test s\u00fcre\u00e7lerinizi kendi sunucular\u0131n\u0131zda bar\u0131nd\u0131rmak ister misiniz? Bu kapsaml\u0131 rehber, on-premise test ara\u00e7lar\u0131n\u0131n kurulumu, y\u00f6netimi ve optimizasyonu hakk\u0131nda bilmeniz gereken her \u015feyi ad\u0131m ad\u0131m a\u00e7\u0131kl\u0131yor, b\u00f6ylece test altyap\u0131n\u0131z \u00fczerinde tam kontrol sa\u011flayabilirsiniz.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/on-prem-test-intra-tools-kendi-barindirilan-test-platformlarina-eksiksiz-kilavuz\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"On-Prem Test Intra Tools: Kendi Bar\u0131nd\u0131r\u0131lan Test Platformlar\u0131na Eksiksiz K\u0131lavuz"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33110","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=33110"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33110\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=33110"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=33110"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=33110"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}