Maven ve Jenkins Entegrasyonu Selenium Klavuz

Jenkins ne durumda? Selenium?

Jenkins, Hudson laboratuvarı tarafından geliştirilen lider açık kaynaklı sürekli entegrasyon aracıdır. Çapraz platformdur ve kullanılabilir Windows, Linux, Mac OS ve Solaris ortamlar. Jenkins şöyle yazılmıştır: Java. Jenkin'in başlıca kullanımı, SVN ödemesi, cron veya herhangi bir uygulama durumu olabilecek herhangi bir işi izlemektir. İşlerde belirli bir adım oluştuğunda önceden yapılandırılmış eylemleri başlatır.

Jenkins'in Önemli Özellikleri

  • Desteği Değiştir: Jenkins, SVN gibi depolarda yapılan tüm değişikliklerin listesini oluşturur.
  • Kalıcı bağlantılar: Jenkins, kolay iletişim için kullanılabilecek en son yapıya veya başarısız yapıya doğrudan bağlantılar sağlar
  • Kurulum: Jenkins'in kurulumu, uygulama sunucusunu kullanarak dağıtmak için doğrudan kurulum dosyası (exe) veya savaş dosyası kullanılarak kolaydır.
  • E-posta entegrasyonu: Jenkins, derlemenin durumunun içeriğini e-postayla gönderecek şekilde yapılandırılabilir.
  • Kolay Yapılandırma: Jenkins'te çeşitli görevleri yapılandırmak kolaydır.
  • TestNG Ölçek: Jenkins, otomasyon testi yapısını çalıştıracak şekilde yapılandırılabilir Test her SVN derlemesinden sonra.
  • Birden çok VM: Jenkins, yapıyı birden fazla makineye dağıtacak şekilde yapılandırılabilir.
  • Proje yapısı: Jenkins, jar'ın ayrıntılarını, jar sürümünü ve yapı ve jar numaralarının eşleştirilmesini belgelendiriyor.
  • Eklentiler: 3rd parti eklentisi, özellikleri ve ek işlevleri kullanacak şekilde Jenkins'te yapılandırılabilir.

Neden Jenkins ve Selenium?

  • Koşu Selenium Jenkins'teki testler, yazılımınız her değiştiğinde testlerinizi çalıştırmanıza ve testler başarılı olduğunda yazılımı yeni bir ortama dağıtmanıza olanak tanır.
  • Jenkins, testlerinizi belirli bir zamanda çalışacak şekilde planlayabilir.
  • Yürütme geçmişini ve Test Raporlarını kaydedebilirsiniz.
  • Jenkins, Maven'i geliştirme ve geliştirme konusunda destekliyor Test yapmak sürekli entegrasyon halindeki bir proje.

Maven nedir? Selenium?

Maven, Maven için inşaat dizini, kaynak dizini, bağımlılık, test kaynağı dizini, Hedefler, eklentiler vb. gibi proje bilgilerini ve yapılandırma bilgilerini içeren POM (Proje Nesne Modeli) konseptini temel alan güçlü bir proje / yapı yönetimi aracıdır. .

Neden Maven ve Jenkins

Selenium WebDriver tarayıcı otomasyonu için mükemmeldir. Ancak bunu test etmek ve bir test çerçevesi oluşturmak için kullanırken, yetersiz hissediyor. Maven'i entegre etmek Selenium Aşağıdaki faydaları sağlar
Apache Maven Bir test projesinin tüm yaşam döngüsünü yönetmeye yönelik destek sağlar.

  • Maven proje yapısını, bağımlılıkları, derleme ve test yönetimini tanımlamak için kullanılır.
  • Pom.xml(Maven) kullanarak test oluşturmak ve kod çalıştırmak için gereken bağımlılıkları yapılandırabilirsiniz.
  • Maven, projeyi oluştururken gerekli dosyaları depodan otomatik olarak indirir.

Maven nasıl kurulur ve birlikte kullanılır? TestNG Selenium

İşte Maven'i kurma ve kullanma adımları: TestNG Selenium

Bu eğitim için kullanacağımız Eclipse (Juno) IDE'si Java Geliştiricilerin kurulumu Selenium WebDriver Projesi. Ek olarak, m2eclipse eklentisini eklememiz gerekiyor Eclipse derleme sürecini kolaylaştırmak ve pom.xml dosyasını oluşturmak için.
M2Eclipse eklentisini ekleyelim Eclipse Aşağıdaki adımlarla:

) 1 Adım In Eclipse IDE'yi seçin Destek | Yeni Yazılım Yükle itibaren Eclipse Ana menü.

) 2 Adım Kurulum iletişim kutusunda URL'yi girin https://www.eclipse.org/m2e/. seçmek Çalışmak ve m2e eklentisi aşağıdaki ekran görüntüsünde gösterildiği gibidir:

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

) 3 Adım Tıklayın Sonraki düğmesine basın ve kurulumu bitirin.

yapılandırma Eclipse Maven ile

M2e eklentisi kurulduğunda artık Maven projesi oluşturmamız gerekiyor.

) 1 Adım In Eclipse IDE'yi seçerek yeni bir proje oluşturun fileto | yeni | Diğer itibaren Eclipse menüsü.

) 2 Adım Üzerinde yeni iletişim kutusunu seçin Maven | Maven Projesi ve İleri'ye tıklayın

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

) 3 Adım Üzerinde Yeni Maven Projesi iletişim kutusunu seçin Basit bir proje oluşturun ve İleri'ye tıklayın

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

) 4 Adım WebdriverTest'i girin Grup kimliği: Ve Yapı Kimliği: ve bitir'i tıklayın

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

) 5 Adım Eclipse oluşturacak Web Sürücüsü Testi Aşağıdaki yapı ile:

Maven'i Kurun ve Birlikte Kullanın TestNG Seleniuml

) 6 Adım Sağ tıklayın JRE Sistem Kitaplığı Seçin ve Emlaklar menüden seçenek.

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

Üzerinde JRE Sistem Kitaplığı Özellikleri iletişim kutusu, emin olun Çalışma alanı varsayılan JRE seçilir ve Tamam'a tıklayın

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

) 7 Adım. Seçmek pom.xml itibaren Proje Gezgini..

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

pom.xml dosyası Editör bölümünde açılacaktır

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

) 8 Adım Eklemek Selenium, Uzman, TestNG, haziran pom.xml dosyasına olan bağımlılıklar düğüm:

	<dependencies>			
        <dependency>				
             <groupId>junit</groupId>								
             <artifactId>junit</artifactId>								
             <version>3.8.1</version>								
             <scope>test</scope>								
        </dependency>				
        <dependency>				
            <groupId>org.seleniumhq.selenium</groupId>								
            <artifactId>selenium-java</artifactId>								
            <version>2.45.0</version>								
		</dependency>				
        <dependency>				
            <groupId>org.testng</groupId>								
            <artifactId>testng</artifactId>								
            <version>6.8.8</version>								
            <scope>test</scope>							  			
       </dependency>				
</dependencies>

) 9 Adım Yeni bir tane oluştur TestNG Sınıf. Paket adını “örnek” ve “YeniTest” olarak girin. İsim: metin kutusuna tıklayın ve Bitiş Aşağıdaki ekran görüntüsünde gösterildiği gibi düğmeye tıklayın:

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

) 10 Adım. Eclipse Aşağıdaki ekran görüntüsünde gösterildiği gibi NewTest sınıfını oluşturacaktır:

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

) 11 Adım Aşağıdaki kodu ekleyin YeniTest sınıf:

Bu kod Guru99 unvanını doğrulayacak Selenium Sayfa

package example;		

import org.openqa.selenium.By;		
import org.openqa.selenium.WebDriver;		
import org.openqa.selenium.firefox.FirefoxDriver;		
import org.testng.Assert;		
import org.testng.annotations.Test;	
import org.testng.annotations.BeforeTest;	
import org.testng.annotations.AfterTest;		
public class NewTest {		
	    private WebDriver driver;		
		@Test				
		public void testEasy() {	
			driver.get("https://demo.guru99.com/test/guru99home/");  
			String title = driver.getTitle();				 
			Assert.assertTrue(title.contains("Demo Guru99 Page")); 		
		}	
		@BeforeTest
		public void beforeTest() {	
		    driver = new FirefoxDriver();  
		}		
		@AfterTest
		public void afterTest() {
			driver.quit();			
		}		
}	

) 12 Adım WebdriverTest'e sağ tıklayın ve seçin TestNG | E dönüşmek TestNG.
Eclipse adı ile yalnızca bir test çalıştırmanız gerektiğini söyleyen testng.xml dosyasını oluşturacaktır. YeniTest Aşağıdaki ekran görüntüsünde görüldüğü gibi:

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

Projeyi güncelleyin ve dosyanın ağaçta göründüğünden emin olun Paket Gezgini (projeye sağ tıklayın – Yenile).

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

) 13 Adım Şimdi bunun üzerinden test yapmanız gerekiyor testng.xml.

Öyleyse şuraya git: Yapılandırmaları Çalıştır ve yeni bir lansman oluştur TestNG, projeyi ve alanı seçin süit as testng.xml ve Çalıştır'a tıklayın

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

Derlemenin başarıyla tamamlandığından emin olun.

) 14 Adım. Ek olarak şunu eklememiz gerekiyor

  1. maven-derleyici-eklentisi
  2. maven-surefire-eklentisi
  3. testng.xml

pom.xml'e.

Maven-surefire-eklentisi testleri yapılandırmak ve yürütmek için kullanılır. Burada eklenti, test.xml dosyasını yapılandırmak için kullanılır. TestNG test edin ve test raporları oluşturun.

maven-compiler-plugin, kodun derlenmesine ve derleme için belirli JDK sürümünün kullanılmasına yardımcı olmak için kullanılır. Aşağıdaki kod parçasındaki tüm bağımlılıkları pom.xml'e ekleyin düğüm:

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

) 15 Adım Çalıştırmak içine Maven yaşam döngüsündeki testler için WebdriverTest'e sağ tıklayın ve Olarak çalıştırmak | Maven testi. Maven projeden test yürütecek.

Maven'i Kurun ve Birlikte Kullanın TestNG Selenium

Derlemenin başarıyla tamamlandığından emin olun.

Jenkins'in Entegrasyonu Nasıl Yapılır? Selenium Web Sürücüsü

Jenkins'i kurmak ve TestNg ile Maven'ı çalıştırmak üzere yapılandırmak için adımlar şunlardır Selenium

Montaj

) 1 Adım MyCAD'de yazılım Güncelleme ye git http://jenkins-ci.org/ ve işletim sisteminiz için doğru paketi indirin. Jenkins'i yükleyin.

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

) 2 Adım Jenkins'i belirtilen klasöre açın. Aşağıdaki ekran görüntüsünde gösterildiği gibi exe dosyasını çalıştırın:

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

) 3 Adım In Jenkins 1.607 Kurulumu pencereye tıklayın Sonraki düğmesine basın.

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

) 4 Adım Tıklayın kurmak sonunda düğmesine basın.

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

) 5 Adım Kurulum tamamlandıktan sonra tarayıcı penceresinde Jenkins Dashboard'a (varsayılan olarak http://localhost:8080) gidin.

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

) 6 Adım Tıkla Yeni Öğe CI işi oluşturma bağlantısı.

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

) 7 Adım Aşağıdaki ekran görüntüsünde gösterildiği gibi Maven projesi radyo düğmesini seçin:

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

Build a'yı kullanma Maven Projesi Jenkins, Maven projelerinin oluşturulmasını ve test edilmesini destekler.

) 8 Adım Tamam düğmesine tıklayın. Jenkins Dashboard'da "WebdriverTest" adında yeni bir iş oluşturuldu.

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

) 9 Adım MyCAD'de yazılım Güncelleme ye git Jenkins'i yönetin => Sistemi Yapılandır aşağıdaki ekran görüntüsünde gösterildiği gibi.

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

JDK kurulumlarına tıklayın ve JDK'yı aşağıdaki ekran görüntüsündeki gibi yapılandırın:

Jenkins'in Entegrasyonu Selenium WebDrive

) 10 Adım Git İnşa etmek yeni iş bölümü.

  • içinde Kök POM metin kutusu, pom.xml'e tam yolu girin
  • Hedefler ve seçenekler bölümüne "temiz test" girin
  • Jenkins'in Entegrasyonu Selenium Web Sürücüsü

) 11 Adım Tıklayın Uygula düğmesine basın.

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

) 12 Adım WebdriverTest proje sayfasında, Şimdi Oluştur bağlantı.

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

Maven projeyi inşa edecek. Daha sonra sahip olacak TestNG test senaryolarını yürütün.

) 13 Adım Oluşturma işlemi tamamlandıktan sonra Jenkins Dashboard'da Web Sürücüsü Testi proje

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

) 14 Adım WebdriverTest proje sayfası, aşağıdaki ekran görüntüsünde gösterildiği gibi derleme geçmişini ve sonuçlara giden bağlantıları görüntüler:

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

) 15 Adım Aşağıdaki ekran görüntüsünde gösterildiği gibi test sonuçlarını görüntülemek için “Son Test Sonucu” bağlantısına tıklayın:

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

) 16 Adım. Belirli bir yapıyı seçin; “ üzerine tıklayarak mevcut durumu göreceksiniz.konsol çıkışı".

Jenkins'in Entegrasyonu Selenium Web Sürücüsü

Jenkins'i otomatik yürütme için zamanlama.

Derlemeleri zamanlama (Selenium Testler), tanımlanmış kriterlere göre derlemeyi otomatik olarak tetiklediği Jenkins'in önemli özelliklerinden biridir. Jenkins, Derleme Tetikleyici yapılandırması altında derleme sürecini tetiklemek için birden fazla yol sunar.

Örneğin:
Aşağıdaki ekran görüntüsünde gösterildiği gibi Schedule metin kutusuna 0 23 * * * girin. Bu, her gün saat 11:XNUMX'te derleme sürecini tetikleyecektir.

Otomatik Yürütme için Jenkins

Jenkings'i Maven olmadan kullanmak

Jenkins'te saf TestNg betiğini çalıştırmak için build'e aşağıdakileri girin

D:>java -cp “Pathtolibfolder\lib\*;Pathtobinfolder\bin” org.testng.TestNG testng.xml

Otomatik Yürütme için Jenkins

  • Kaydet düğmesine tıklayın.
  • Not: Lib ve bin klasörünün gerçek yolunun yukarıdaki komuta eklenmesi gerekir.
  • Komutu kaydettikten sonra Jenkins, önceden tanımlanan sürede projeyi oluşturacak ve bu komut kullanılarak çalıştırılacaktır. TestNG.
  • Sonuç, Jenkin yapılandırmasıyla e-posta yoluyla gönderilebilen özel bir rapor HTML dosyasında saklanacaktır
  • Kodun çıktısı şu şekilde olacaktır:

Otomatik Yürütme için Jenkins

Jenkins'i kullanmanın faydaları

  1. Erken sorun bulma – Hata, yazılım geliştirmenin erken aşamasında tespit edilebilir
  2. Otomatik entegrasyon – tüm değişiklikleri entegre etmek için ayrı bir çabaya gerek yoktur
  3. Yükleyici – herhangi bir geliştirme noktasında kullanılabilen konuşlandırılabilir bir sistem
  4. Kayıtlar – parça yapım kayıtları tutulur
  5. Destek ve Eklentiler: Jenkin'in popülaritesinin nedenlerinden biri geniş topluluk desteğinin mevcut olmasıdır. Ayrıca, işlevselliğini genişletmenize yardımcı olacak birçok hazır eklenti mevcuttur.