how update testlink test case execution status remotely through selenium tutorial 3
TestLink API Kullanarak Selenium WebDriver ile TestLink Test Durumunu Yürütme Durumunu Uzaktan Güncelleme
İlk iki TestLink öğreticisinde ( Bölüm 1 ve Bölüm 2 ) TestLink kurulumunu, bir test projesi oluşturmayı, test planı, test senaryolarını, gereksinim yönetimini, test senaryolarının manuel olarak yürütülmesini ve test raporları oluşturmayı öğrendik.
Bugün, TestLink'in gelişmiş ve önemli bir özelliğini öğreneceğiz, yani TestLink API kullanarak Selenium WebDriver kodu aracılığıyla test senaryosu yürütme durumunu güncelleyeceğiz. Ayrıca bu API çağrısı için kullanabileceğiniz tam Selenium kodunu da sağlayacağız.
Bu özellik sayesinde, test senaryosu yürütme durumunu güncellemek için her seferinde TestLink'te oturum açmanız gerekmez. TestLink API kullanarak bunu otomatik olarak yapabilirsiniz. Bu, manuel yürütme sürenizi kısaltacaktır.
Bu özelliği göstermek için Selenium WebDriver kullanıyoruz ve TestLink'teki test notu ile birlikte test durumu durumunu güncelliyoruz.
Selenium WebDriver kodu ve TestLink API aracılığıyla XML-RPC çağrısı aracılığıyla test senaryosu yürütme durumunun uzaktan nasıl güncelleneceğine derinlemesine bir göz atalım.
Ön Koşullar
- TestLink öğreticisi # 1'de açıklanan tüm adımlar gerçekleştirilmelidir.
- Selenium'u projenizde test otomasyonu için kullanıyorsunuz.
- Selenium kullanılarak otomatikleştirilen test senaryoları, Selenium koduyla TestLink'te güncellenebilir.
Java
- Java'yı şuradan indirebilirsiniz: İşte .
- .Exe dosyasına çift tıklayın ve java'yı sisteminize yükleyin.
Tutulma
- Eclipse for windows'u indirin İşte .
- Bir zip paketi olarak indirilecek, çıkarılacak ve yerel sürücünüze yerleştirilecektir.
Selenyum Kütüphane Kavanozları
Selenyum-java kavanozu ve selenyum bağımsız kavanozu şuradan indirin: İşte .
Junit-4.11
Junit 4.11 jar dosyasını şuradan indirin: İşte.
TestLink İstemci API kavanozları
Test Client API kavanozlarını şuradan indirin: İşte .
Ne öğreneceksin:
- TestLink API'yi Etkinleştirme
- API Anahtarı Oluşturuluyor
- Yürütme Modunu Değiştirme
- Selenyum Kodu Yazma
- Selenium Kodunun Yürütülmesi
- Sonuç
- Önerilen Kaynaklar
TestLink API'yi Etkinleştirme
Otomatik test senaryosu yürütmesi için, TestLink API yapılandırması yapılandırma dosyasında etkinleştirilmelidir.
API'yi aşağıdaki adımları izlemek üzere etkinleştirmek için:
Adım # 1) (Apache hizmetini durdurun)
TestLink, Apache'de zaten konuşlandırıldı. Yapılandırma dosyasında herhangi bir değişiklik yapmadan önce Apache durdurulmalıdır.
Bunu yapmak için açın Kontrol Paneli -> Sistem ve Güvenlik -> Yönetim araçları.
'Hizmetler' simgesine çift tıklayın.
Apache 2.4 hizmetine tıklayın ve sol tarafta görünen 'hizmeti durdur' bağlantısına tıklayın.
Apache hizmetini durduracaktır.
android için youtube mp4 dönüştürücü
Adım # 2) (TestLink Yapılandırma dosyasında API'yi etkinleştirin)
İçindeki TestLink klasörünü açın htdocs klasör ve aç Config.inc.php dosya düzenleme modunda.
Aşağıdaki satırı 'DOĞRU' olarak değiştirin.
/* (API) */ /** XML-RPC API availability - do less than promised FALSE => user are not able to generate and set his/her API key. XML-RPC server do not check this config in order to answer or not a call. */ $tlCfg->api->enabled = TRUE;
Dosyayı kaydedin ve kapatın.
Adım 3) (Apache hizmetini başlatın)
Apache hizmetini Adım 1'de açıklandığı gibi açın ve başlatın.
API Anahtarı Oluşturuluyor
TestLink, Test senaryosu yürütme durumunu otomatik bir şekilde güncellemek için gerekli olan her kullanıcı için bir API anahtarı sağlar.
API anahtarı, aşağıdaki adımlarda açıklanan basit adımlarla oluşturulabilir:
Aşama 1)
Tarayıcınızda TestLink URL'sini açın ve kullanıcı kimlik bilgilerinizle oturum açın.
Adım 2)
TestLink masaüstü sayfasındaki 'Ayarlarım' bağlantısını açın.
Aşama 3)
API Arayüzü bölümünde 'Yeni Anahtar Oluştur' düğmesini tıklayın.
Sayfada yeni bir anahtar oluşturulacak ve görüntülenecektir.
hangi süreç geliştirme sırasında yazılımı doğrulamak için otomatikleştirilmiş derlemeler ve testler gerektirir
Yürütme Modunu Değiştirme
Bir Test senaryosu yürütme durumunu API aracılığıyla güncellemek için yürütme türü 'Otomatik' olmalıdır.
Test senaryosu yürütme türünü Otomatik olarak değiştirme:
Not: Bu uzaktan durum güncelleme uygulamasını takip ediyorsanız, test olaylarını oluştururken yürütme türünü Otomatik olarak güncelleyebilirsiniz.
Bir Test senaryosu açın ve sağ taraftaki panelde görünen 'ayarlar' simgesine tıklayın. İşlemlerin bir listesini gösterecektir. 'Düzenle' düğmesine tıklayın.
Yürütme Türünü 'Otomatik' olarak değiştirin.
'Kaydet' düğmesine tıklayın.
Test senaryosu adını, Test projesi adını, Test planı adını ve yapı adını not edin. Selenium kodumuzda bu detaylara ihtiyacımız olacak.
Örneğimizde,
Test Projesi Adı: Gmail
Test Planı Adı: SampleTestPlan
Test Vakası Adı: GmailLogin1
Yapı Adı: SampleBuild
Selenyum Kodu Yazma
Eclipse'i açın ve aşağıdaki şekilde gösterildiği gibi bir Java projesi oluşturun.
Projeye sağ tıklayın, Oluşturma Yolu -> Oluşturma yolunu yapılandır'a gidin, 'Kitaplıklar' sekmesine geçin ve 'Harici Kavanoz Ekle' düğmesine tıklayın.
Derleme yoluna aşağıdaki kavanozları ekleyin
- Junit 4.11 kavanoz
- Selenium bağımsız sunucu kavanozu
- Selenyum - java kavanozu ve tüm kitaplıklar (Kitaplık klasörü) kavanozu
- TestLink İstemci API kavanozu ve tüm lib (Kitaplık klasörü) kavanozu
youtube videosunu mp4'e çevrimiçi ücretsiz dönüştürün
'Tamam' düğmesine tıklayın. Tüm kavanozlar proje oluşturma yoluna eklenecektir.
İçinde bir paket oluşturun src java projesinin dizini aşağıda gösterildiği gibidir:
Paketin içinde 'AutomatedUpdateExample' adıyla bir sınıf oluşturun.
Aşağıdaki kodu bu sınıfa kopyalayın:
package com.test; import org.junit.Test; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.support.ui.ExpectedConditions; import org.openqa.selenium.support.ui.WebDriverWait; import testlink.api.java.client.TestLinkAPIClient; import testlink.api.java.client.TestLinkAPIException; import testlink.api.java.client.TestLinkAPIResults; public class AutomatedUpdateExample { public static String DEVKEY='2f404203b306bd8dd811a7f824c194d0'; public static String URL='http://localhost/testlink/lib/api/xmlrpc/v1/xmlrpc.php'; public static void reportResult(String TestProject,String TestPlan,String Testcase,String Build,String Notes,String Result) throws TestLinkAPIException{ TestLinkAPIClient api=new TestLinkAPIClient(DEVKEY, URL); api.reportTestCaseResult(TestProject, TestPlan, Testcase, Build, Notes, Result); } @Test public void Test1()throws Exception { AutomatedUpdateExample a=new AutomatedUpdateExample(); WebDriver driver=new FirefoxDriver(); WebDriverWait wait=new WebDriverWait(driver, 600); String testProject='Gmail'; String testPlan='SampleTestPlan'; String testCase='GmailLogin1'; String build='SampleBuild'; String notes=null; String result=null; try{ driver.manage().window().maximize(); driver.get('https://accounts.google.com/ServiceLogin?service=mail&passive=true&rm=false&continue=https://mail.google.com/mail/&ss=1&scc=1<mpl=default<mplcache=2&emr=1'); driver.findElement(By.id('Email')).sendKeys('testlink.msoftgp'); driver.findElement(By.id('Passwd')).sendKeys('*******'); driver.findElement(By.id('signIn')).click(); driver.switchTo().defaultContent(); wait.until(ExpectedConditions.visibilityOfElementLocated(By.linkText('+Testlink'))); result= TestLinkAPIResults.TEST_PASSED; notes='Executed successfully'; } catch(Exception e){ result=TestLinkAPIResults.TEST_FAILED; notes='Execution failed'; } finally{ a.reportResult(testProject, testPlan, testCase, build, notes, result); driver.quit(); } } }
( Not : Yukarıdaki kodda Test projesini, Test planını, Test senaryosunu ve Yapı adını proje ayrıntılarınıza göre güncelleyin)
Dosya 'yı kaydet.
Selenium Kodunun Yürütülmesi
Selenium'da testin yürütülmesine bağlı olarak, TestLink test senaryosu durumu 'Geçti' veya 'Başarısız' olarak güncellenecektir.
Kod istisnasız başarıyla yürütülürse, test senaryosu durumu 'Geçti' olarak güncellenecektir. Herhangi bir istisna olması durumunda test senaryosu durumu 'Başarısız' olarak güncellenecektir.
Kodu yürütmek için, dosyaya sağ tıklayın ve Olarak çalıştırmak -> Junit Testi . Testi yürütmeye başlayacaktır.
Şimdi tarayıcınızda TestLink'i açın ve test senaryosu için yürütme durumunu görün. Güncellenmelidir.
Yürütmeden Önce
Yürütmeden Sonra
Sonuç
Umarım TestLink test senaryosu yürütme durumunun TestLink API kullanılarak otomatik olarak nasıl güncelleneceğini açıkça açıklamışızdır.
Test uzmanları, oturum açmak zorunda kalmadan test senaryosu yürütme durumunu doğrudan TestLink'te kolayca güncelleyebilir. Bu, kesinlikle değerli zamanınızı ve paranızı korumanıza yardımcı olacaktır. :)
Bu yine TestLink'in iyi bir açık kaynaklı Test Yönetim Aracı , manuel test uzmanlarının yanı sıra otomasyon uzmanları tarafından da kullanılabilir.
Bununla, TestLink eğitim serimizi tamamlıyoruz. Sorgularınızı yorumlarda yayınlamaktan çekinmeyin.
Önerilen Kaynaklar
- TestLink Eğitimi 4 - Test Metrikleri, Anahtar Kelime Yönetimi, Özel Alanlar ve Test Rapor Grafikleri
- Her birinin Artıları ve Eksileri ile En Popüler Test Otomasyon Çerçeveleri - Selenium Tutorial # 20
- TestLink Eğitimi: TestLink Test Yönetim Aracı için Bir Layman Kılavuzu (Öğretici # 1)
- Etkili Selenium Komut Dosyası Oluşturma ve Sorun Giderme Senaryoları - Selenium Eğitimi # 27
- Selenium WebDriver'a Giriş - Selenium Eğitimi # 8
- Yeni Başlayanlar İçin Derinlemesine Tutulma Öğreticileri
- Günlüklerle Selenium Komut Dosyalarında Hata Ayıklama (Log4j Eğitimi) - Selenium Eğitimi # 26
- 30+ En İyi Selenyum Öğreticisi: Gerçek Örneklerle Selenyum Öğrenin