Как выполнить несколько тестовых случаев, используя testNG - PullRequest
1 голос
/ 22 октября 2019

Я хочу понять, как мы выполняем несколько тестовых случаев, используя testNg. Предположим, что мое веб-приложение состоит из 10 страниц. Затем, как мы выполняем приведенные ниже тестовые случаи.

1) 1-й TC - переход на страницу 1,2,3,4,5 и 6.

2) 2-й TC- Обход или навигация до страницы 1,2,3,8,9 и 10.

3) 3-й TC- Обход или навигация до страницы 1,2,6,7,8.

все страницы имеют соответствующие приоритеты. Страница 1 имеет приоритет 1, Страница 2 имеет приоритет 2 и т. Д.

Нужно ли вызывать связанные методы (методы, определенные на каждой странице.) В каждой аннотации @Test.

Спасибо!

Ответы [ 2 ]

2 голосов
/ 23 октября 2019

Похоже, у вас есть один @Test аннотированный метод для каждой страницы. Если они могут правильно проходить логически, как вы упомянули, то для запуска их для ваших тестовых случаев я бы удалил приоритеты из TC и использовал бы этот xml с preserve-order="true", чтобы они выполнялись в том же порядке. Вы можете добавить больше TC к ниже таким же образом. Посмотрите на this

Ниже XML будет вызывать методы в таком порядке, вы должны убедиться, что они могут правильно перейти на ваши страницы

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="yourSuiteName" >

    <test name="1stTC" preserve-order="true">

        <classes>  
         <class name="yourPackage.YourClass" >
               <methods> 
                  <include name="method1" />
                  <include name="method2" /> 
                  <include name="method3" />
                  <include name="method4" />
                   <include name="method5" />
                  <include name="method6" />
               </methods> 
          </class>
       <classes> 
      </test>

<test name="2ndTC" preserve-order="true"> 
       <classes>         
           <class name="yourPackage.YourClass">
               <methods> 
                  <include name="method1" />
                  <include name="method2" /> 
                  <include name="method3" />
                  <include name="method8" /> 
                  <include name="method9" />
                  <include name="method10" />
               </methods>
          </class>
        </classes>
    </test>
</suite>
1 голос
/ 22 октября 2019

Если у вас есть несколько страниц, вы можете иметь класс объекта Page для каждой веб-страницы. этот класс может иметь несколько методов, которые реализованы как операции, которые могут выполняться на этой странице, и могут возвращать объект следующей страницы, на которую он перемещается. Используя такие объекты классов объектов Page и их методы, вы можете спроектировать свой тестовый метод, который будет рассматриваться как Тестовый случай.

Например, для страницы входа в систему укажите Login.java со всеми необходимыми элементами на странице иопределите метод, как показано ниже

public Homepage loginAction(String Username, String Password){
      // write code to perform login opeartion
      // it returns Homepage object that you can store in Homepage type variable and you can call other operations of Homepage on that object.
}

Как только у вас есть все классы объектов Page, готовые к использованию, вы можете написать тестовые случаи, вызвав методы tat.

Например:

@Test
public void TestCaseOne(){
      Login loginpage = new Login();
      Homepage homepage = loginpage.loginAction("ABC","XYZ");
      homepage.selectAcc(1);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...