Selenium IDE'yi Scripts & Komutlar (Onaylama, Doğrulama)

İçindekiler:

Anonim

Mercury Tours web sitesini test edilen web uygulamamız olarak kullanacağız. Bu eğitim için ihtiyacımız olan tüm unsurları içeren bir çevrimiçi uçuş rezervasyon sistemidir. URL'si http://demo.guru99.com/test/newtours/ şeklindedir ve bu bizim Temel URL'miz olacaktır.

Kaydederek Komut Dosyası Oluşturun

Şimdi Selenium IDE'de ilk test komut dosyamızı en yaygın yöntemi kullanarak - kaydederek oluşturalım. Daha sonra betiğimizi oynatma özelliğini kullanarak çalıştıracağız.

Aşama 1

  • Firefox ve Selenium IDE'yi başlatın.
  • Temel URL'mizin değerini yazın: http://demo.guru99.com/test/newtours/.
  • Kayıt düğmesini açın (varsayılan olarak henüz açılmamışsa).
Adım 2

Firefox'ta http://demo.guru99.com/test/newtours/ adresine gidin. Firefox sizi aşağıda gösterilene benzer sayfaya götürmelidir.

Aşama 3
  • Sol üst köşedeki Mercury Tours logosu gibi, sayfadaki herhangi bir boş alana sağ tıklayın. Bu Selenium IDE içerik menüsünü getirecektir. Not: Köprü bağlantılı herhangi bir nesneye veya resme tıklamayın
  • "Mevcut Komutları Göster" seçeneğini seçin.
  • Ardından, "assertTitle exact: Welcome: Mercury Tours" u seçin. Bu, sayfa başlığının doğru olmasını sağlayan bir komuttur.
4. adım
  • Mercury Tours’un "Kullanıcı Adı" metin kutusuna geçersiz bir kullanıcı adı, "geçersizUNN" yazın.
  • "Parola" metin kutusuna geçersiz bir parola, "geçersiz PWD" yazın.
Adım 5
  • "Oturum Aç" düğmesine tıklayın. Firefox sizi bu sayfaya götürmelidir.
6. Adım

Kaydı durdurmak için kayıt düğmesini kapatın. Komut dosyanız şimdi aşağıda gösterilen gibi görünmelidir.

7. Adım

Artık test komut dosyamızla işimiz bittiğine göre, onu bir test senaryosunda kaydedeceğiz. Dosya menüsünde, "Test Durumunu Kaydet" i seçin. Alternatif olarak, Ctrl + S tuşlarına da basabilirsiniz.

8. Adım
  • İstediğiniz konumu seçin ve ardından Test Senaryosunu "Invalid_login" olarak adlandırın.
  • "Kaydet" düğmesini tıklayın.
9. Adım.

Dosyanın HTML olarak kaydedildiğine dikkat edin.

10. adım.

Selenium IDE'ye geri dönün ve tüm betiği yürütmek için Playback düğmesine tıklayın. Selenium IDE her şeyi kusursuz bir şekilde kopyalayabilmelidir.

Selenium Komutlarına Giriş - Selenese

  • Selenese komutları en fazla iki parametreye sahip olabilir: hedef ve değer.
  • Parametreler her zaman gerekli değildir. Komutun kaç kişiye ihtiyaç duyacağına bağlıdır.

3 Tür Komut

Hareketler

Bunlar, doğrudan sayfa öğeleriyle etkileşime giren komutlardır.

Örnek: "tıklama" komutu, tıkladığınız öğeyle doğrudan etkileşimde bulunduğunuz için bir eylemdir.

"Tür" komutu da bir eylemdir çünkü değerleri bir metin kutusuna koyarsınız ve metin kutusu karşılığında bunları size gösterir. Siz ve metin kutusu arasında iki yönlü bir etkileşim vardır.

Erişimciler

Değerleri bir değişkene kaydetmenize izin veren komutlardır.

Örnek: "storeTitle" komutu bir erişimcidir çünkü yalnızca sayfa başlığını "okur" ve onu bir değişkene kaydeder. Sayfadaki herhangi bir öğe ile etkileşime girmez.

İddialar

Belirli bir koşulun karşılanıp karşılanmadığını doğrulayan komutlardır.

3 Tür İddialar

  • İddia et . Bir "assert" komutu başarısız olduğunda, test hemen durdurulur.
  • Doğrulayın . "Doğrula" komutu başarısız olduğunda, Selenium IDE bu hatayı günlüğe kaydeder ve test yürütmeye devam eder.
  • WaitFor . Bir sonraki komuta geçmeden önce, "waitFor" komutları önce belirli bir koşulun gerçekleşmesini bekleyecektir.
    • Bekleme süresi içerisinde durum gerçekleşirse adım geçilir.
    • Koşul gerçekleşmezse adım başarısız olur. Hata günlüğe kaydedilir ve test yürütmesi bir sonraki komutla devam eder.
    • Varsayılan olarak, zaman aşımı değeri 30 saniyeye ayarlanmıştır. Bunu, Genel sekmesi altındaki Selenium IDE Seçenekleri iletişim kutusunda değiştirebilirsiniz.

Onaylama ve Doğrulama

Ortak Komutlar

Komut Parametre Sayısı Açıklama
açık 0-2

URL kullanarak bir sayfa açar.

click / clickAndWait 1

Belirli bir öğeye tıklar.

type / typeKeys 2

Bir dizi karakter yazar.

validTitle / assertTitle 1

Gerçek sayfa başlığını beklenen bir değerle karşılaştırır.

validTextPresent 1

Sayfada belirli bir metnin bulunup bulunmadığını kontrol eder.

validElementPresent 1

Belirli bir elementin varlığını kontrol eder.

validTable 2

Bir tablonun içeriğini beklenen değerlerle karşılaştırır.

waitForPageToLoad 1

Sayfa tamamen yüklenene kadar yürütmeyi duraklatır.

waitForElementPresent 1

Belirtilen öğe mevcut olana kadar yürütmeyi duraklatır.

Firebug ile Manuel Olarak Komut Dosyası Oluşturun

Şimdi, komutları yazarak aynı test senaryosunu manuel olarak yeniden oluşturacağız. Bu sefer Firebug kullanmamız gerekecek.

Aşama 1
  • Firefox ve Selenium IDE'yi açın.
  • Temel URL'yi yazın (http://demo.guru99.com/test/newtours/).
  • Kayıt düğmesi KAPALI olmalıdır.
Adım 2: Editör'de en üstteki boş satıra tıklayın.

Komut metin kutusuna "aç" yazın ve Enter tuşuna basın.

Aşama 3
  • Firefox'u temel URL'mize gidin ve Firebug'ı etkinleştirin
  • Selenium IDE Editor bölmesinde, ikinci satırı ("aç" komutunun altındaki satır) seçin ve Komut kutusuna "assertTitle" yazarak ikinci komutu oluşturun.
  • Otomatik tamamlama özelliğini kullanmaktan çekinmeyin.
4. adım
  • Firebug'da, etiketini görüntülemek için <head> etiketini genişletin.</li> <li><title> etiketinin ("Hoş Geldiniz: Mercury Turları") değerine tıklayın ve bunu Editör'deki Hedef alanına yapıştırın.</li> </ul> </td> </tr> <tr> <td><strong>Adım 5</strong> <ul> <li>Üçüncü komutu oluşturmak için, Editör'deki üçüncü boş satıra tıklayın ve Komut metin kutusuna "yazın" yazın.</li> <li>Firebug'da "İncele" düğmesini tıklayın.</li> </ul> </td> </tr> <tr> <td>Kullanıcı Adı metin kutusuna tıklayın. Firebug'ın size o öğenin HTML kodunu otomatik olarak gösterdiğine dikkat edin.</td> </tr> <tr> <td><strong>6. Adım</strong> <p>Kullanıcı Adı metin kutusunun bir kimliği olmadığına, ancak bir NAME özelliğine sahip olduğuna dikkat edin. Bu nedenle, İSMİNİ yer belirleyici olarak kullanacağız. NAME değerini kopyalayın ve Selenium IDE'deki Hedef alanına yapıştırın.</p> <p>Yine Hedef metin kutusunda, Selenium IDE'nin NAME özniteliği "userName" olan bir öğeyi hedeflemesi gerektiğini belirten "name =" ile "userName" ön eki.</p> <p>Selenium IDE'nin Değer metin kutusuna "geçersiz UN" yazın. Test komut dosyanız şimdi aşağıdaki resim gibi görünmelidir. Üçüncü emirle işimiz bitti. Not: invalidUN yerine, herhangi başka bir metin dizesi girebilirsiniz. Ancak Selenium IDE büyük / küçük harfe duyarlıdır ve değerleri / nitelikleri aynen uygulamadaki gibi yazarsınız.</p> </td> </tr> <tr> <td><strong>7. Adım</strong> <ul> <li>Dördüncü komutu oluşturmak için, Komut metin kutusuna "yazın" yazın.</li> <li>Yine, "Şifre" metin kutusu için yer bulucuyu almak için Firebug'ın "İncele" düğmesini kullanın.</li> </ul> <ul> <li> <p>NAME özelliğini ("şifre") Hedef alana yapıştırın ve önüne "name =" ekleyin</p> </li> <li> <p>Selenium IDE'deki Değer alanına "geçersizPW" yazın. Test komut dosyanızın şimdi aşağıdaki resimdeki gibi görünmesi gerekir.</p> </li> </ul> </td> </tr> <tr> <td><strong>8. Adım</strong> <ul> <li>Beşinci komut için, Selenium IDE'deki Komut metin kutusuna "clickAndWait" yazın.</li> <li>"Oturum Aç" düğmesinin yerini bulmak için Firebug'ın "İncele" düğmesini kullanın.</li> </ul> <ul> <li>NAME özniteliğinin değerini ("login") Hedef metin kutusuna yapıştırın ve önüne "name =" ekleyin.</li> <li>Test komut dosyanızın şimdi aşağıdaki resimdeki gibi görünmesi gerekir.</li> </ul> </td> </tr> </tbody> </table> <p><strong>Adım 9:</strong> Test olayını önceki bölümde yaptığımız gibi kaydedin.</p> <a id="menu-6"></a> <h2>Bul Düğmesini Kullanma</h2> <p><strong>Selenium IDE'deki Bul düğmesi, Hedef metin kutusuna koyduğumuz şeyin gerçekten doğru UI öğesi olup olmadığını doğrulamak için kullanılır.</strong></p> <p>Önceki bölümlerde oluşturduğumuz Invalid_login test durumunu kullanalım. Hedef girişi olan herhangi bir komuta, örneğin üçüncü komuta tıklayın.</p> <p>Bul düğmesine tıklayın. Mercury Tours sayfasındaki Kullanıcı Adı metin kutusunun bir saniyeliğine vurgulandığına dikkat edin.</p> <p>Bu, Selenium IDE'nin beklenen öğeyi doğru bir şekilde algılayıp erişebildiğini gösterir. Bul düğmesi farklı bir öğeyi vurguladıysa veya hiçbir öğeyi vurgulamıyorsa, komut dosyanızda bir sorun olması gerekir.</p> <a id="menu-7"></a> <h2>Komutu çalıştır</h2> <p><strong>Bu, tüm test senaryosunu çalıştırmadan herhangi bir tek komutu yürütmenize olanak tanır</strong> . Yürütmek istediğiniz satıra tıklayın ve ardından menü çubuğundan "Eylemler> Bu komutu çalıştır" seçeneğine tıklayın veya klavyenizdeki "X" tuşuna basın.</p> <p><strong>Adım 1.</strong> Tarayıcınızın Mercury Tours ana sayfasında olduğundan emin olun. Yürütmek istediğiniz komuta tıklayın. Bu örnekte, "type | userName | geçersizUN" satırına tıklayın.</p> <p><strong>Adım 2.</strong> Klavyenizdeki "X" tuşuna basın.</p> <p><strong>3. Adım.</strong> Kullanıcı adı metin kutusunun "geçersizUN" metniyle doldurulduğunu gözlemleyin.</p> <p><strong>Komutların bu şekilde yürütülmesi, Firefox'un şu anda görüntülediği sayfaya büyük ölçüde bağlıdır</strong> . Bu, yukarıdaki örneği Mercury Tours yerine Google ana sayfasının görüntülendiği şekilde denerseniz, Google'ın ana sayfasında "userName" özelliğine sahip bir metin kutusu olmadığı için adımınızın başarısız olacağı anlamına gelir.</p> <a id="menu-8"></a> <h2>Başlangıç ​​noktası</h2> <p><strong>Başlangıç ​​noktası, Selenium IDE'ye yürütmenin hangi satırlarda başlayacağını söyleyen bir göstergedir</strong> . <strong>Kısayol tuşu "S" dir.</strong></p> <p>Yukarıdaki örnekte, oynatma üçüncü satırda başlayacaktır (yazın | şifre | geçersizPW). <strong>Tek bir test komut dosyasında yalnızca bir başlangıç ​​noktanız olabilir.</strong></p> <p>Başlangıç ​​noktası, o anda görüntülenen sayfaya bağlı olmaları bakımından Execute Command'a benzer. Yanlış sayfadaysanız başlangıç ​​noktası başarısız olur.</p> <a id="menu-9"></a> <h2>Kesme noktaları</h2> <p>Kesme noktaları, Selenium IDE'ye testi otomatik olarak nerede duraklatacağını söyleyen göstergelerdir. <strong>Kısayol tuşu "B" dir.</strong></p> <p>Sarı vurgu, geçerli adımın beklemede olduğu anlamına gelir. Bu, Selenium IDE'nin bu adımda yürütmeyi duraklattığını kanıtlıyor. <strong>Tek bir test senaryosunda birden fazla kesme noktasına sahip olabilirsiniz.</strong></p> <a id="menu-10"></a> <h2>Adım</h2> <p>Test durumunu duraklattıktan sonra sonraki komutları birer birer yürütmenize olanak tanır. Önceki "Kesme Noktaları" bölümündeki senaryoyu kullanalım.</p> <table> <tbody> <tr> <td width="50%"> </td> <td> <p><strong>"Adım" ı tıklamadan önce.</strong></p> <p>Test senaryosu "clickAndWait | oturum aç" satırında durur.</p> </td> </tr> <tr> <td width="50%"> </td> <td> <p><strong>"Adım" ı tıkladıktan sonra.</strong></p> <p>"ClickAndWait | oturum açma" satırı çalıştırılır ve bir sonraki komuta (doğrulamaTitle | Sign-on: Mercury Tours) kadar duraklar.</p> <p>Burada kesme noktası olmamasına rağmen sonraki satırın duraklatıldığına dikkat edin. Bu, Adım özelliğinin ana amacıdır - her adımdan sonra sonucu incelemek için size daha fazla zaman vermek için sonraki komutları birer birer yürütür.</p> </td> </tr> </tbody> </table> <a id="menu-11"></a> <h2>Kaynak Görünümünde Diğer Biçimleri Kullanırken Dikkat Edilmesi Gereken Önemli Noktalar</h2> <p><strong>Selenium IDE yalnızca HTML ile iyi çalışır - diğer formatlar hala deneysel moddadır</strong> . Öyle <strong>tavsiye DEĞİL</strong> oluşturmak veya kararlı hale getirmek için gerekli bir sürü iş hala var çünkü düzenleme testleri kaynak görünümlerinde diğer biçimleri kullanarak. 1.9.1 sürümünden itibaren bilinen hatalar aşağıdadır.</p> <ul> <li>HTML'ye dönmediğiniz sürece kayıttan yürütme gerçekleştiremez veya Tablo Görünümüne geri dönemezsiniz.</li> <li>Kaynak koda güvenli bir şekilde komut eklemenin tek yolu onları kaydetmektir.</li> <li>Kaynak kodunu manuel olarak değiştirdiğinizde, başka bir biçime geçtiğinizde tümü kaybolacaktır.</li> <li>Kaynak Görünümü'ndeyken test durumunuzu kaydedebilmenize rağmen, Selenium IDE onu açamayacaktır.</li> </ul> <p><strong>Selenese testlerini dönüştürmenin önerilen yolu, Kaynak Görünümü yerine Dosya menüsü altındaki "Test Durumunu Farklı Aktar…" seçeneğini kullanmaktır.</strong></p> <a id="menu-12"></a> <h2>Özet</h2> <ul> <li>Test komut dosyaları, komutları ve parametreleri manuel olarak kaydederek veya yazarak oluşturulabilir.</li> <li>Manuel olarak komut dosyaları oluştururken, bulucuyu almak için Firebug kullanılır.</li> <li>Bul düğmesi, komutun doğru öğeye erişip erişemediğini kontrol etmek için kullanılır.</li> <li>Tablo Görünümü bir test komut dosyasını tablo biçiminde görüntülerken Kaynak Görünümü bunu HTML biçiminde görüntüler.</li> <li>Kaynak Görünümünü HTML olmayan bir biçime değiştirmek hâlâ deneyseldir.</li> <li>Diğer formatlarda testler oluştururken Kaynak Görünümünü kullanmayın. Bunun yerine Dışa aktarma özelliklerini kullanın.</li> <li>Parametreler her zaman gerekli değildir. Komuta bağlıdır.</li> <li>Üç tür komut vardır:</li> <ul> <li>Eylemler - doğrudan sayfa öğeleriyle etkileşim kurar</li> <li>Erişimciler - bir öğe özelliğini "okur" ve bir değişkende saklar</li> <li>İddialar - gerçek bir değeri beklenen bir değerle karşılaştırır</li> </ul> <li>İddiaların üç türü vardır:</li> <ul> <li>İddia - başarısızlık durumunda, sonraki adımlar artık yürütülmez</li> <li>Doğrula - başarısızlık durumunda, sonraki adımlar hala yürütülür.</li> <li>WaitFor - belirtilen koşul, zaman aşımı süresi içinde gerçekleşirse geçer; aksi takdirde başarısız olur</li> </ul> <li>En yaygın komutlar şunlardır:</li> <ul> <li>açık</li> <li>click / clickAndWait</li> <li>type / typeKeys</li> <li>validTitle / assertTitle</li> <li>validTextPresent</li> <li>validElementPresent</li> <li>validTable</li> <li>waitForPageToLoad</li> <li>waitForElementPresent</li> </ul> </ul> </div> </article> <div id="container-5533149ee6411a5f99b370c693e87966"></div> </div> </div> </div> </div> </div> <aside class="col-lg-4 sidebar sidebar--right"> <div class="widget widget-popular-posts"> <h2 class="widget-title">Popüler Mesajlar</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8003328-034-building-search-part-1" title="# 034: Yapı Arama, 1. Bölüm - CSS Hileleri" rel="bookmark"><img src="https://cdn.css-code.org/1561184/034_building_search-_part_1_css-tricks.png.webp" loading="lazy" alt="# 034: Yapı Arama, 1. Bölüm - CSS Hileleri" title="# 034: Yapı Arama, 1. Bölüm - CSS Hileleri" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8003328-034-building-search-part-1" title="# 034: Yapı Arama, 1. Bölüm - CSS Hileleri" rel="bookmark"># 034: Yapı Arama, 1. Bölüm - CSS Hileleri 2025</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8003329-035-preventing-typekit-fout" title="# 035: Typekit FOUT'u Önleme - CSS Hileleri" rel="bookmark"><img src="https://cdn.css-code.org/6524157/035_preventing_typekit_fout_css-tricks.png.webp" loading="lazy" alt="# 035: Typekit FOUT'u Önleme - CSS Hileleri" title="# 035: Typekit FOUT'u Önleme - CSS Hileleri" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8003329-035-preventing-typekit-fout" title="# 035: Typekit FOUT'u Önleme - CSS Hileleri" rel="bookmark"># 035: Typekit FOUT'u Önleme - CSS Hileleri 2025</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8003330-036-building-search-part-2" title="# 036: Yapı Arama, Bölüm 2 - CSS Hileleri" rel="bookmark"><img src="https://cdn.css-code.org/7148171/036_building_search-_part_2_css-tricks.png.webp" loading="lazy" alt="# 036: Yapı Arama, Bölüm 2 - CSS Hileleri" title="# 036: Yapı Arama, Bölüm 2 - CSS Hileleri" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8003330-036-building-search-part-2" title="# 036: Yapı Arama, Bölüm 2 - CSS Hileleri" rel="bookmark"># 036: Yapı Arama, Bölüm 2 - CSS Hileleri 2025</a></h3> </div> </div> </li> </ul> </div> <div class="widget widget-popular-posts"> <h2 class="widget-title">Ayın En iyi yorumlar</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226495-rank-transformation-in-informatica-with-example" title="ÖRNEK ile Informatica'da Kademe Dönüşümü" rel="bookmark">ÖRNEK ile Informatica'da Kademe Dönüşümü</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226496-lookup-transformation-in-informatica-and-re-usable-transformation-example" title="Informatica & Yeniden Kullanılabilir Dönüşüm Örneği" rel="bookmark">Informatica & Yeniden Kullanılabilir Dönüşüm Örneği</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226497-performance-tuning-in-informatica-complete-tutorial" title="Informatica'da Performans Ayarlama: Tam Eğitim" rel="bookmark">Informatica'da Performans Ayarlama: Tam Eğitim</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226498-normalizer-transformation-in-informatica-with-example" title="ÖRNEK ile Informatica'da Normalizer Dönüşümü" rel="bookmark">ÖRNEK ile Informatica'da Normalizer Dönüşümü</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226499-top-50-informatica-interview-questions-and-answers" title="En İyi 50 Informatica Röportaj Sorusu & Yanıtlar" rel="bookmark">En İyi 50 Informatica Röportaj Sorusu & Yanıtlar</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226500-top-42-microstrategy-interview-questions-and-answers" title="En İyi 42 Mikro Strateji Mülakat Soruları & Yanıtlar" rel="bookmark">En İyi 42 Mikro Strateji Mülakat Soruları & Yanıtlar</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226501-informatica-cloud-tutorial-pdf-for-beginners-free-download" title="Yeni Başlayanlar İçin Informatica Cloud Eğitimi PDF'si (ÜCRETSİZ İndirin)" rel="bookmark">Yeni Başlayanlar İçin Informatica Cloud Eğitimi PDF'si (ÜCRETSİZ İndirin)</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226502-how-to-create-database-and-collection-in-mongodb" title="Veritabanı Nasıl Oluşturulur & MongoDB'de Koleksiyon" rel="bookmark">Veritabanı Nasıl Oluşturulur & MongoDB'de Koleksiyon</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226503-add-mongodb-array-using-insert-with-example" title="Örnek ile insert () kullanarak MongoDB Dizisini ekleyin" rel="bookmark">Örnek ile insert () kullanarak MongoDB Dizisini ekleyin</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226504-what-is-mongodb-introduction-architecture-features-and-example" title="MongoDB nedir? Giriş, Mimari, Özellikler & Misal" rel="bookmark">MongoDB nedir? Giriş, Mimari, Özellikler & Misal</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226505-mongodb-primary-key-example-to-set-id-field-with-objectid" title="Mongodb Birincil Anahtar: ObjectId () ile _id alanını ayarlama örneği" rel="bookmark">Mongodb Birincil Anahtar: ObjectId () ile _id alanını ayarlama örneği</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226506-mongodb-cursor-tutorial-learn-with-example" title="MongoDB İmleç Eğitimi: ÖRNEK ile Öğrenin" rel="bookmark">MongoDB İmleç Eğitimi: ÖRNEK ile Öğrenin</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226507-mongodb-query-document-using-find-with-example" title="Örnek ile find () kullanarak MongoDB Sorgu Belgesi" rel="bookmark">Örnek ile find () kullanarak MongoDB Sorgu Belgesi</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226508-mongodb-order-with-sort-and-limit-query-with-examples" title="Sırala () & Örneklerle Limit () Sorgusu" rel="bookmark">Sırala () & Örneklerle Limit () Sorgusu</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8226509-mongodb-count-and-remove-functions-with-examples" title="MongoDB Sayısı () & Örneklerle Kaldır () İşlevleri" rel="bookmark">MongoDB Sayısı () & Örneklerle Kaldır () İşlevleri</a></h3> </div> </div> </li> </ul> </div> <div id="container-5533149ee6411a5f99b370c693e87966"></div> <div class="widget widget-popular-posts"> <h2 class="widget-title">En Makaleler</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8004348-99-overview-of-html5-forms-types-attributes-and-elements" title="# 99: HTML5 Form Türlerine, Niteliklerine ve Öğelerine Genel Bakış - CSS Hileleri" rel="bookmark"><img src="https://cdn.css-code.org/3165384/99_overview_of_html5_forms_types-_attributes-_and_elements_css-tricks.png.webp" loading="lazy" alt="# 99: HTML5 Form Türlerine, Niteliklerine ve Öğelerine Genel Bakış - CSS Hileleri" title="# 99: HTML5 Form Türlerine, Niteliklerine ve Öğelerine Genel Bakış - CSS Hileleri" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8004348-99-overview-of-html5-forms-types-attributes-and-elements" title="# 99: HTML5 Form Türlerine, Niteliklerine ve Öğelerine Genel Bakış - CSS Hileleri" rel="bookmark"># 99: HTML5 Form Türlerine, Niteliklerine ve Öğelerine Genel Bakış - CSS Hileleri 2025</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8004350-134-a-tour-of-a-site-in-progress-built-with-jekyll-grunt-sass-an-svg-system-and-more" title="# 134: Jekyll, Grunt, Sass, SVG Sistemi ve Daha Fazlasıyla Oluşturulan Devam Eden Bir Site Turu - CSS Hileleri" rel="bookmark"><img src="https://cdn.css-code.org/4867448/134_a_tour_of_a_site_in-progress_built_with_jekyll-_grunt-_sass-_an_svg_system-_and_more_css-tricks.png.webp" loading="lazy" alt="# 134: Jekyll, Grunt, Sass, SVG Sistemi ve Daha Fazlasıyla Oluşturulan Devam Eden Bir Site Turu - CSS Hileleri" title="# 134: Jekyll, Grunt, Sass, SVG Sistemi ve Daha Fazlasıyla Oluşturulan Devam Eden Bir Site Turu - CSS Hileleri" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8004350-134-a-tour-of-a-site-in-progress-built-with-jekyll-grunt-sass-an-svg-system-and-more" title="# 134: Jekyll, Grunt, Sass, SVG Sistemi ve Daha Fazlasıyla Oluşturulan Devam Eden Bir Site Turu - CSS Hileleri" rel="bookmark"># 134: Jekyll, Grunt, Sass, SVG Sistemi ve Daha Fazlasıyla Oluşturulan Devam Eden Bir Site Turu - CSS Hileleri 2025</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8004351-156-lets-talk-about-webpack" title="# 156: Webpack Hakkında Konuşalım - CSS Hileleri" rel="bookmark"><img src="https://cdn.css-code.org/9287482/156_lets_talk_about_webpack_css-tricks.png.webp" loading="lazy" alt="# 156: Webpack Hakkında Konuşalım - CSS Hileleri" title="# 156: Webpack Hakkında Konuşalım - CSS Hileleri" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8004351-156-lets-talk-about-webpack" title="# 156: Webpack Hakkında Konuşalım - CSS Hileleri" rel="bookmark"># 156: Webpack Hakkında Konuşalım - CSS Hileleri 2025</a></h3> </div> </div> </li> </ul> </div> </aside> </div> </div> <footer class="footer footer--dark"> <div class="container"> <div class="footer__widgets"> <div class="row"> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Popüler Mesajlar</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003628-php-error-logging" title="PHP Hata Günlüğü - CSS Hileleri" rel="bookmark">PHP Hata Günlüğü - CSS Hileleri</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003629-force-files-to-download-not-open-in-browser" title="Dosyaları İndirmeye Zorla (Tarayıcıda Açılmıyor) - CSS Hileleri" rel="bookmark">Dosyaları İndirmeye Zorla (Tarayıcıda Açılmıyor) - CSS Hileleri</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003631-prevent-image-hotlinking" title="Görüntü Sıcak Bağlantısını Önleyin - CSS Hileleri" rel="bookmark">Görüntü Sıcak Bağlantısını Önleyin - CSS Hileleri</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003632-using-font-face" title="@ Font-face kullanımı - CSS Hileleri" rel="bookmark">@ Font-face kullanımı - CSS Hileleri</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003633-serve-svg-with-the-correct-content-type" title="Doğru İçerik Türü ile SVG Sunma - CSS Hileleri" rel="bookmark">Doğru İçerik Türü ile SVG Sunma - CSS Hileleri</a></h3> </div> </div> </li> </ul> </div> </div> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Editörün Seçimi</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225638-vbscript-functions-and-procedures-with-example" title="VBScript İşlevleri & Örnek Prosedürler" rel="bookmark">VBScript İşlevleri & Örnek Prosedürler</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225639-top-25-vbscript-interview-questions-and-answers" title="En İyi 25 VBScript Mülakat Sorusu & Yanıtlar" rel="bookmark">En İyi 25 VBScript Mülakat Sorusu & Yanıtlar</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225640-what-is-an-api-meaning-definition-types-application-example" title="API nedir? Anlam, Tanım, Türler, Uygulama, Örnek" rel="bookmark">API nedir? Anlam, Tanım, Türler, Uygulama, Örnek</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225641-vbscript-loops-do-while-do-until-while-for-each-example" title="VBScript Döngüleri: Her Biri İçin Devam Et, Yapana Kadar Yap (Örnek)" rel="bookmark">VBScript Döngüleri: Her Biri İçin Devam Et, Yapana Kadar Yap (Örnek)</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225642-what-are-web-services-architecture-types-example" title="Web Hizmetleri nedir? Mimari, Tipler, Örnek" rel="bookmark">Web Hizmetleri nedir? Mimari, Tipler, Örnek</a></h3> </div> </div> </li> </ul> </div> </div> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">En Makaleler</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8004288-48-skinning-phpbb" title="# 48: phpBB için görünüm oluşturma - CSS Hileleri" rel="bookmark"># 48: phpBB için görünüm oluşturma - CSS Hileleri</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8004289-49-hodgepodge-of-photoshop-tricks" title="# 49: Photoshop Tricks'den Hodgepodge - CSS Hileleri" rel="bookmark"># 49: Photoshop Tricks'den Hodgepodge - CSS Hileleri</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8004290-51-a-lesson-learned-in-accessibility" title="# 51: Erişilebilirlik Konusunda Öğrenilen Bir Ders - CSS Hileleri" rel="bookmark"># 51: Erişilebilirlik Konusunda Öğrenilen Bir Ders - CSS Hileleri</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8004291-50-building-a-customized-and-dynamic-ordering-form" title="# 50: Özelleştirilmiş ve Dinamik Bir Sipariş Formu Oluşturma - CSS Hileleri" rel="bookmark"># 50: Özelleştirilmiş ve Dinamik Bir Sipariş Formu Oluşturma - CSS Hileleri</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8004292-4-forcing-scrollbars-eliminating-horizontal-jumps" title="# 4: Kaydırma Çubuklarını Zorlamak: "Yatay Sıçramaları" Ortadan Kaldırmak - CSS Hileleri" rel="bookmark"># 4: Kaydırma Çubuklarını Zorlamak: "Yatay Sıçramaları" Ortadan Kaldırmak - CSS Hileleri</a></h3> </div> </div> </li> </ul> </div> </div> </div> <p>© Copyright tr.css-code.org, 2025 Şubat | <a href="https://tr.css-code.org/about-site" title="Site Hakkında">Site Hakkında</a> | <a href="https://tr.css-code.org/contacts" title="Temas">Temas</a> | <a href="https://tr.css-code.org/privacy-policy" title="Gizlilik Politikası">Gizlilik Politikası</a>. </p> </div> </div> </footer> <link href="https://css-code.org/template/css/style.min.css" rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'" /> </body> </html>