Я создавал демо-фреймворк для Открытого приложения MRS с использованием POM design. Учетные данные для приложения "admin / Admin123" Я создал следующие 3 класса: 1) Тесты входа в систему: который содержит все вход в систему (1 + ve и 2 -ve сценарий ios) и тест выхода из системы (всего 4 @Tests) 2) Регистрация теста пациента: который зарегистрирует пациента, а также проверит, успешно ли он был зарегистрирован (Всего 3 + ve @Tests) 3) Тест захвата жизненно важных органов: который будет фиксировать жизненные показатели пациента, зарегистрированного выше, и проверять правильность полученных данных. (Всего 2 + ve @Tests)
Я планирую добавить еще несколько классов, которые будут содержать тесты, связанные с добавлением посещений, добавлением аллергии и т. Д. c.
Существует зависимость между классами, т.е. выполняется только регистр тест пациента, если @Test for Login проходит. Точно так же выполните остальные тесты, такие как захват жизненно важных органов, добавление посещений, добавление аллергии, только если пройден тест Зарегистрировать пациента. Тем не менее, нет никакой зависимости между захватом жизненно важных органов, добавлением посещений и добавлением аллергий и может проходить параллельно.
Вот как это выглядит с верхнего уровня:
class Login
@Test T_001_LoginTest
@Test T_002_LogoutTest
class RegisterPatient
@Test T_003_RegisterNewPatient
@Test T_004_ConfirmPatientRegisteredUsingPatientID (dependent on T_003)
@Test T_005_ConfirmPatientRegisteredUsingPatientName (dependent on T_003)
class CaptureVitalsTest
@Test T_006_CreateAVisitAndCaptureVitals (dependent on T_001 and T_003)
@Test T_007_VerifyVitals (dependent on T_006)
На данный момент я добавил определенную группу «login» для класса Login и группу «registerpatient» для класса Register. Для класса RegisterPatient я добавил зависящий от группы «логин». Точно так же для класса CaptureVitals я добавил зависящие от группы группы «login» и «registerpatient». Я также установил AlwaysRun = true для методов @Test, которые имеют зависимость "disabledOnMethods".
Ниже мой файл testng. xml
<suite name="Open MRS Automation" parallel="tests">
<listeners>
<listener class-name="com.utils.CustomListener" />
</listeners>
<test thread-count="5" name="Login Test">
<classes>
<class name="com.testcases.LoginTest" />
</classes>
</test> <!-- Test -->
<test thread-count="5" name="Register Patient Tests">
<classes>
<class name="com.testcases.RegisterPatientTest" />
</classes>
</test>
<test thread-count="5" name="Capture Vitals Tests">
<classes>
<class name="com.testcases.CaptureVitalsTest" />
</classes>
</test>
</suite>
Каков будет правильный подход при настройке начального последовательного, а затем параллельного выполнения тестов? Любая помощь будет оценена! Спасибо.