Как выполнить только несколько случайных примеров для схемы сценария? - PullRequest
0 голосов
/ 29 августа 2018

Сценарий: вход в FaceBook

Given Enter "<emailId>"

And Enter the "<password>"

When Click on Login button

Then Navigated to HomePage

Примеры:

| emailId | пароль |

|. А @ *** ком | abcd |

|. 123 @ *** ком | 1234 |

|. @ # $ @ *** ком | ! @ # $ |

-> я хочу выполнить тестовый сценарий только с "123@***.com". Как мы можем достичь этого?

Когда я помещаю 2 примера, я получаю ошибку компиляции "отсутствует EOF в 'examples:" "во 2-м примере.

Заранее спасибо.

1 Ответ

0 голосов
/ 29 августа 2018

Вы можете контролировать выполнение последующих шагов, используя флаг. Схема сценария: Создать

Given Enter "<emailId>"
And Enter Password "<password>"
And Check "<runFlag>"
When Click on Login button
Then Navigated to HomePage

Examples: 
  | emailId         | password | runFlag  |
  | abc@***.com     |     abcd | N        |
  | 123@***.com     |     1234 | Y        |
  | @#$@***.com     |     !@#$ | N        |

Затем создайте свою собственную логику, используя переменную flag, чтобы управлять потоком выполнения и утверждением предстоящих шагов

private static String flag;

    @Given("^Enter \"([^\"]*)\"$")
    public void enter(String username) throws Throwable {
        System.out.println("=============================================================");
        System.out.println("Username: " + username);
    }

    @Given("^Enter Password \"([^\"]*)\"$")
    public void enter_p(String password) throws Throwable {
        System.out.println("Password: " + password);
    }

    @Given("^Check \"([^\"]*)\"$")
    public void check(String runFlag) throws Throwable {
        System.out.println("Run Flag: " + runFlag);
        flag = runFlag;
    }

    @When("^Click on Login button$")
    public void click_on_Login_button() throws Throwable {
        if("Y".equalsIgnoreCase(flag)){
            System.out.println("Clicked Login");
        }else{
            System.out.println("Skipped: RunFlag=" + flag);
        }
    }

    @Then("^Navigated to HomePage$")
    public void navigated_to_HomePage() throws Throwable {
        if("Y".equalsIgnoreCase(flag)){
            System.out.println("Navigated to homepage");
        }else{
            System.out.println("Skipped: RunFlag=" + flag);
        }
    }
...