Чем заменить аннотацию @BeforeTest в Robot Framework - Selenium Library? - PullRequest
0 голосов
/ 11 декабря 2018

Мне нужно выполнить какое-то ключевое слово перед каждым тестом.Предположим, у меня есть файл .robot, в котором есть 4 тестовых случая, и мне нужно выполнить ключевое слово 4 раза перед выполнением этих 4 тестовых случаев.В TestNG мы можем использовать аннотацию @BeforeTest.Я хотел бы знать, что можно использовать для этого в Robot Framework?

Спасибо.

Ответы [ 3 ]

0 голосов
/ 11 декабря 2018

Вы можете использовать настройку Robotframework Test Setup, чтобы определить ключевое слово, которое будет запускаться перед каждым случаем в наборе.
Если вы хотите указать настройку для конкретного случая, это хорошо с [Setup] -и если установлен, он переопределит набор настроек на уровне набора:

*** Settings ***
Test Setup      Log    this is ran for every case

*** Test Cases ***
Case 1
    Do Something

Case 2
    [Setup]    Log    Custom case setup
    Do Something Else

Case 3
    Do The Third Thing

Когда будут запущены Case 1 и Case 3, перед их выполнением вы увидите сообщение «это выполняется для каждого случая»,но не для случая 2 - он имеет переопределенную настройку, и вы увидите его сообщение («Custom case setup»)

0 голосов
/ 11 декабря 2018

Ниже приведены ключевые слова в каркасе робота в качестве замены для хуков выполнения.

┌────────────────┬───────────────────────┐
│ Robot Keyword  │ TestNG Execution Hook │
├────────────────┼───────────────────────┤
│ Test Setup     │ @BeforeTest           │
│ Test Teardown  │ @AfterTest            │
│ Suite Setup    │ @BeforeSuite          │
│ Suite Teardown │ @AfterSuite           │
└────────────────┴───────────────────────┘
0 голосов
/ 11 декабря 2018

Test Setup, Test Teardown, ключевые слова Test Timeout могут использоваться для указания функции, которую необходимо вызывать перед каждым тестовым примером.
- Test Setup будет действовать как @Before/@BeforeMethod в Junit / Testng соответственно
- Test Teardown будет действовать как @After/@AfterMethod в JUnit / Testng
- [Setup] Keyword - будет использоваться, если вы хотитевыполнить @BeforeTest только для этого теста.Пожалуйста, смотрите ниже пример-

*** Settings ***
Library         OperatingSystem
Suite Setup     This Is Suite Startup Keyword
Suite Teardown  This Is Suite TearDown Keyword
Test Setup      This Is Before Test
Test Teardown   This Is After Test

*** Keywords ***
This Is Suite Startup Keyword
    Log To Console      This Is Suite Startup Keyword

This Is Suite TearDown Keyword

    Log To Console      This Is Suite TearDown Keyword

This Is Before Test
    Log To Console      This Is Before Test

This Is After Test
    Log To Console      This Is After Test

This Is Special Execution Case
    Log To Console      This Is Special Execution Case


*** Test Cases ***
Test Case One
    [setup]             This Is Special Execution Case
    Log To Console      This Is My Test Case 1

Test Case Two
    Log To Console      This Is My Test Case 2

Test Case Three
    Log To Console      This Is My Test Case 3

Для получения более подробной информации см. Руководство пользователя Robot Framework раздел Файлы инициализации и 2.4.5 Установка и разборка Suite.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...