integration jenkins with selenium webdriver
Selenium ile Jenkins'i Kurmak ve Yapılandırmak için adım adım kılavuz:
DevOps Serisindeki önceki öğreticimiz, DevOps'ta Jenkins ile Ansible Rolleri ve Entegrasyon .
Jenkins, Java ile yazılmış açık kaynaklı bir araçtır. Sağlar sürekli teslimat ve sürekli entegrasyon hizmeti yazılım geliştirme için. Geliştirme kutusundan (QA - Stage - Production) manuel kod devreye alma sürecini otomatikleştirir.
Önerilen Okuma => Hassas DevOps Eğitimi Eğitim Serisi
Jenkins, Git, SVN, derleme ardışık düzeni ve çok daha fazlası gibi entegre edebileceğiniz birçok eklentiyi destekler.
Jenkins'in temel işlevi, zamana ve bazı olaylara dayalı olarak önceden tanımlanmış bir adım listesi yürütmektir.
Örneğin, yürütmeyi zamanında temellendirmek istediğinizde, her 20 dakikada bir işi çalıştırabilirsiniz veya bir olaya dayandırmak istiyorsanız, bunu Git deposundaki yeni bir işlemden sonra yapabilirsiniz.
Bu yazıda aşağıdaki noktaları ele aldık:
- Jenkins kullanımı ve selenyum ile entegrasyon
- Bir toplu iş dosyası oluşturma ve onu kullanarak Jenkins
- Jenkins işini planlama ve e-posta bildirimi eklendi
- Ve selenyum betiğini komut satırından çalıştırmak
Jenkins kullanmanın avantajları şunlardır:
- Çapraz platformdur ve Windows, Linux, Mac OS ve Solaris ortamlarında kullanılabilir
- Ücretsiz ve açık kaynaklı bir araçtır
- Yaygın olarak kullanılan ve iyi belgelenmiş
- Çok çeşitli araç ve teknolojilerle entegrasyon
Jenkins dışında, piyasada aşağıdakiler gibi daha birçok aracımız var:
- Karınca yuvası
- Bambu
- Seyir kontrolü
- Team City ve daha fazlası.
Ne öğreneceksin:
- Jenkins kullanımı ve selenyum ile entegrasyon
- Bir toplu iş dosyası oluşturmak ve bunu Jenkins'te kullanmak
- Jenkins işini planlama
- E-posta bildirimleri nasıl eklenir
- Selenium betiğini komut satırı üzerinden çalıştırma
- Sonuç
- Önerilen Kaynaklar
Jenkins kullanımı ve selenyum ile entegrasyon
Jenkins'i Selenium ile kullanmak için aşağıdaki adım adım prosedürü izleyin
Aşama 1:
Jenkins'in resmi web sitesinden Jenkins'i indirin - Jenkins . En son .war dosyasını indirin. Jenkins, komut satırı aracılığıyla başlatılabilir veya bir web uygulama sunucusunda çalıştırılabilir.
Komut satırı üzerinden yürütme için aşağıdaki adımlara bakın:
1) Komut istemini açın ve yazın java –jar ve bir .war dosyasının yolunu girin
(Not:Büyütülmüş görmek için herhangi bir resme tıklayın)
iki) Enter tuşuna basın ve Jenkins.war dosyanızın çalışmaya başlayıp başlamadığını kontrol edin ve komut istemi konsolundaki durum bilgilerini kontrol edin.
Göstermeli - Jenkins tamamen hazır ve çalışıyor
3) Şimdi Jenkins'inizin kullanıma hazır olup olmadığını kontrol edin; varsayılan olarak 8080 numaralı bağlantı noktasını kullanır.
'Yazın' http: // localhost: 8080 Tarayıcıda 'yazın ve enter tuşuna basın. Size Jenkins kullanıcı arayüzünü gösterecek.
Varsayılan olarak Jenkins kontrol panelini boş olarak yükleyecektir. Örnek olarak yukarıdaki ekran görüntüsünde bazı Jenkins işi oluşturdum ve bu nedenle boş yüklenmedi.
Adım 2:
Selenium'u Jenkins ile kullanmak için Jenkins'i Selenium ile yapılandırmanız gerekir.
Aşağıdaki adımları izleyin:
- Jenkins kontrol paneline git
- Jenkins'i yönet'e tıklayın
- Jenkins'i yapılandır'a tıklayın
- JDK yüklemesine tıklayın - JDK adı bölümünde Java Ana Sayfa bölümünde adı girin - java yolunu verin
Radyo düğmesi, Otomatik olarak yükle varsayılan olarak işaretlidir. Yeni Java sürümüyle otomatik olarak güncelleneceğinden ve Selenium'un yeni Java sürümünü desteklememe ihtimali olabileceğinden işaretini kaldırmanız gerekir. İşaretini kaldırmak daha iyidir. Şimdi uygula ve kaydet'e tıklayın.
Jenkins'iniz Selenium ile yapılandırılmıştır ve artık Selenium ile kullanılmaya hazırdır. Hem Jenkins hem de Selenium kodu Java ile yazılmıştır. Bu nedenle, Java yolunu verirseniz, o zaman dahili olarak işinizi iletir ve işler.
Aşama 3:
Şimdi bir Selenium komut dosyası ve bir TestNG XML dosyası oluşturun. Bu TestNG XML dosyası bir toplu iş dosyası oluşturmak için gerekli olacak ve bu toplu iş dosyasını Jenkins'te kullanacağız. Aşağıdaki TestNG koduna bakın:
Aşağıdaki TestNG koduna bakın:
package session_2; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.testng.Assert; import org.testng.annotations.Test; public class jenkins_demo { @Test publicvoidtestgooglrsearch(){ WebDriver driver = newFirefoxDriver(); //it will open the goggle page driver.get('http://google.in'); //we expect the title “Google “ should be present String Expectedtitle = 'Google'; //it will fetch the actual title String Actualtitle = driver.getTitle(); System.out.println('Before Assetion ' + Expectedtitle + Actualtitle); //it will compare actual title and expected title Assert.assertEquals(Actualtitle, Expectedtitle); //print out the result System.out.println('After Assertion ' + Expectedtitle + Actualtitle + ' Title matched '); } }
Çıktı : Onaylamadan Önce GoogleGoogle
Onaylamadan sonra, GoogleGoogle Başlığı eşleşti
GEÇTİ: testgooglrsearch
Bir TestNG xml dosyası oluşturun, aşağıdaki koda bakın:
4. Adım:
Proje kök dizininize gidin ve bir kitaplık klasörü oluşturun.
Aşağıdaki ekran görüntüsüne bakın:
Şimdi, Selenium komut dosyanızı çalıştırmak için gerekli olan tüm jar dosyalarınızı ekleyin:
en iyi casus yazılım temizleme yazılımı nedir
Adım 5:
Bir toplu iş dosyası oluşturmak ve bunu Jenkins'te kullanmak
Aşağıdaki adımları izleyerek bir toplu iş dosyası oluşturun:
1) Not defterini açın ve şunu yazın: Java –cp bin; lib / * org.testng.TestNG testng.xml
Bunu yaparak, Java –cp adresinde bulunan bir .class dosyasını derleyecek ve çalıştıracaktır. am dizin ve tüm yürütülebilir jar dosyamız şu konumda bulunur: lib bir TestNG çerçevesi kullanıyoruz, bu nedenle org.testng.TestNG. Ayrıca şunu belirtin: xml adı dosya, beklenen TestNG komut dosyasını tetikleyecek.
iki) Dosyayı .bat uzantısıyla kaydedin ve dosya türünü kontrol edin. 'Windows toplu iş dosyası' olmalıdır. Toplu iş dosyasının düzgün bir şekilde oluşturulup oluşturulmadığını çapraz kontrol etmek için toplu iş dosyasına çift tıklayın ve kodu çalıştıracaktır. Aşağıdaki toplu iş dosyası koduna bakın:
6. Adım:
Sonra, Jenkins'e bir toplu iş dosyası eklememiz gerekiyor.
Toplu iş dosyasını eklemek için aşağıdaki adımları izleyin:
1) Jenkins panosuna gidin, Jenkins'te yeni bir iş oluşturun
iki) Yeni bir öğeye tıklayın ve öğe adını girin ve serbest stil proje radyo düğmesini kontrol edin
3) Gelişmiş seçenekler'i tıklayın
4) Özel çalışma alanını kullan'ı tıklayın ve Selenium komut dosyası projenizin çalışma alanı yolunu verin: ' E: Automation_workspace Demo-testNG '
5) Ardından açılır kutudan Oluşturun ve Bir seçenek belirleyin seçeneğine gidin, yapınızı Windows toplu iş komutuyla yürütün
6) Ve toplu iş dosyanızın adını burada verin - ' run.bat '
7) Uygula ve kaydet'e tıklayın
8) Şimdi derlemeye tıklayın ve konsol çıktısındaki derleme sonucunu görün
Şimdiye kadar öğrendik:
- Jenkins'e nasıl başlanır
- Jenkins'i Selenium ile yapılandırma
- Toplu iş dosyanızı oluşturmak ve bunu Jenkins aracılığıyla yürütmek.
Hepinizin bildiği gibi, Jenkins esas olarak gecelik yapıları çalıştırmak için kullanılan çok güçlü bir araçtır. Bu nedenle, yapınızı nasıl planlayacağımızı ve ilgili ekibe e-posta bildirimleri göndermeyi şimdi öğreneceğiz.
Jenkins işini planlama
Toplu iş dosyanızı planlamak için aşağıdaki adımları uygulayın:
- Kontrol paneline gidin ve Jenkins işine tıklayın
- Yapılandır'a ve ardından gelişmiş seçeneğe tıklayın
- Sonra şuraya git Tetikleyiciler oluşturun ve seçin Periyodik olarak oluşturun seçeneğini seçin ve cron iş modelinizi girin
- Cron iş modelini anlamak için bunu izleyin wiki bağlantısı
* * * * * Girdim, yani her dakika işimi çalıştıracak
- Uygula ve kaydet'e tıklayın
Manuel müdahale yoktur. Komut dosyası programlandıktan sonra, programlanan zamanda çalışacaktır.
E-posta bildirimleri nasıl eklenir
Ardından, e-posta bildirimlerinin nasıl ekleneceğini ele alacağız.
Aşağıdaki adımlara bakın:
- 'Jenkins'i Yönetin' bölümüne gidin
- Sistemi yapılandır'a tıklayın
- E-posta bildirimini seçin
- SMTP sunucu adresinizi verin. Resmi sunucu adresimi belirtemediğim için Gmail kullanıyorum. Resmi sunucu adresinizi öğrenmek için ağ destek ekibinizle iletişime geçin
- SMTP sunucu adını girdim = smtp.gmail.com
- Gelişmiş bağlantıya tıklayın ve SMTP Kimlik Doğrulamasını Kullan onay kutusunu işaretleyin
- Kullanıcı adı, şifre ve SMTP bağlantı noktası numarasını sağlayın; Gmail için 465'tir. Karakter kümesini kontrol edin ve = UTF-8 olduğundan emin olun
- Yapılandırmayı test et düğmesine tıklayarak e-posta yapılandırma ayarlarınızı kontrol edin.
- Bu nedenle, yapı her geçtiğinde veya başarısız olduğunda, e-posta bildirimini alırsınız.
Selenium betiğini komut satırı üzerinden çalıştırma
Şimdi göreceğiz Selenium betiğini komut istemiyle nasıl çalıştırabiliriz . Bu kısmın Jenkins ile ilgisi yok. Selenium hakkında daha fazla bilgi vermek için bunu paylaşıyorum.
Aşağıdaki adımları izleyin:
- Komut isteminizi açın ve proje temel yolunuza gidin
- Komut dosyanız için sınıf yolunu belirleyin; bu, ikili ve kitaplık dosyalarımızın bu konumda depolandığını belirttiğimiz anlamına gelir
E: Automation_workspace Demo-testNG> sınıf yolunu ayarla = E: Automation_workspace Demo-testNG bin; E: Automation_workspace Demo-testNG lib *;
- Komutu yazarak testng.xml dosyanızı yürütün - java org.testng.TestNG testng.xml
- Enter tuşuna bastığınızda, komut dosyanız çalışmaya başlar ve test sonucunu kullanıcı arayüzünde görebilirsiniz.
Bazen komut dosyanızı çalıştırırken, 'org.testng.TestNG ana sınıf bulunamadı veya yüklenemedi' şeklinde bir hatayla karşılaşabilirsiniz.
Ardından komut isteminizi kapatmanız ve sınıf yolunuzu yukarıda belirtildiği gibi yeniden ayarlamanız ve aynı adımları tekrarlamanız gerekir. Hatanız çözülecek ve komut dosyası çalışacaktır.
Sonuç
Jenkins'in selenyum ile entegrasyonu, yazılım kodunda her değişiklik olduğunda betiğinizi çalıştırmanızı ve kodu yeni bir ortama yerleştirmenizi sağlar. Jenkins ile yürütme geçmişini ve test raporlarını kaydedebilirsiniz.
Kısacası, Jenkins, hazır test senaryolarınız olduğunda ve bunların tek bir tıklama kullanarak çalışmasını istediğinizde çok kullanışlıdır. Bir toplu iş dosyası kullanarak test olaylarını çalıştırmak için bir yapı oluşturabilir veya planlayabiliriz.
Daha fazla okuma => Selenium'u Maven projesiyle entegre edin
Not: Bu eğitim, Selenium'un yanı sıra DevOps eğitim serisinin bir parçasıdır. DevOps serisinden önceki ve sonraki öğreticiler için aşağıdaki bağlantıya tıklayın.
PREV Eğitimi | SONRAKİ Eğitici
Sorularınızı aşağıdaki yorumlar bölümünde göndermekten çekinmeyin .
Önerilen Kaynaklar
- Salatalık Selenium Eğitimi: Salatalık Java Selenium WebDriver Entegrasyonu
- Selenium WebDriver'a Giriş - Selenium Eğitimi # 8
- Selenium'un JMeter ile entegrasyonu
- MongoDB'de Dağıtım: Adım Adım Eğitim
- Yeni Başlayanlar İçin Derinlemesine Tutulma Öğreticileri
- İlk WebDriver Komut Dosyamızın Uygulanması - Selenium WebDriver Eğitimi # 10
- Specflow ve Selenium Webdriver Uçtan Uca Örneği
- Selenium Komut Dosyaları Oluşturmak için Firebug Nasıl Kullanılır - Selenium Eğitimi # 4