Ana içeriğe atla

Otomasyon Testlerini JUnit ile Önceliklendirme

  • Kullandığınız IDE'de ilk olarak çalışmasını istediğiniz kodun @Test annotation'ının üstüne 
@Category({Critical.class}) yazın. İkinci olarak çalışmasını istediğinizin üzerine;
@Category({Major.class}) yazın.

Bu categoriler için Critical ve Major interfacelerini oluşturun. Critical interface inin içine

import org.junit.experimental.categories.Categories;
import org.junit.runner.RunWith;
@RunWith(Categories.class)
@Categories.IncludeCategory({Critical.class})
public interface Critical {
}

Major categorisinin içine

import org.junit.experimental.categories.Categories;
import org.junit.runner.RunWith;
@RunWith(Categories.class)
@Categories.IncludeCategory({Major.class})
public interface Major {
}

yazın.


  • pom.xml'e

<profiles>
            <profile>
                <id>All</id>
                <build>
                    <plugins>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-surefire-plugin</artifactId>
                            <version>3.0.0-M3</version>
                            <configuration>
                                <groups>categorilerinizinbulunduğudizin.Critical,categorilerinizinbulunduğudizinMajor</groups>
                            </configuration>
                        </plugin>
                    </plugins>
                </build>
            </profile>
            <profile>
                <id>Critical</id>
                <build>
                    <plugins>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-surefire-plugin</artifactId>
                            <version>3.0.0-M3</version>
                            <configuration>
                                <groups>categorilerinizinbulunduğudizin.Critical</groups>
                            </configuration>
                        </plugin>
                    </plugins>
                </build>
            </profile>
<profile>
                <id>Major</id>
                <build>
                    <plugins>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-surefire-plugin</artifactId>
                            <version>3.0.0-M3</version>
                            <configuration>
                                <groups>categorilerinizinbulunduğudizin.Major</groups>
                            </configuration>
                        </plugin>
                    </plugins>
                </build>
            </profile>
        </profiles>

Bunları ALL, Critical, Major diye ayrı belirtmemizin sebebi testi çalıştırıken bize seçenek sunması aşağıda anlatıldığı gibi.

  • Git Bash'te kodunuzun olduğu dizinde "mvn -P ALL test" yazarsanız butun testlerinizin çalıştığını görürsünüz. Eğer "mvn -P Critical test" ya da "mvn -P Major test" yazarsanız sadece belirttiğiniz öneme sahip olan testin çalıştığını görürsünüz.

Burada JUnit, Intellij IDEA, Git Bash, Maven kullanılmaktadır.

Yorumlar

Bu blogdaki popüler yayınlar

Selenium - XPath Kodları

XPath, XML Path Absolute XPath: root node u verir ve / ile başlar Elementin path inde herhangi bir değişiklik yapılırsa, test kodu hata verir. Örn:  html/body/div[1]/section/div[1]/div/div/div/div[1]/div/div/div/div/div[3]/div[1]/div/h4[1]/b Relative XPath: xml dokümanındaki elementi verir ve // ile başlar Örn : //*[@class='featured-box']//*[text()='Testing'] XPath Kombinasyonları: Belli bir tagin belli bir attribute değeri ile kullanımı Herhangi bir tag in belli bir attribute değeri ile kullanımı "and" operatörü "or" operatörü Belirli bir değer ile başlayan attribute Metnin bir kısmını içeren attribute Sadece text() Herhangi bir attribute un değeri Belli Bir Tag'ın Belli Bir Attribute Değeri ile Kullanımı (Specific tag with specific attribute value) Html Kodu < input   id = "Lid"  .....   > input:tag adı (etiket adı) id : attribute Lid : attribute değeri Selenium Kodu driver.findElement(By.x...