У меня есть декларация о моих функциях ниже.
Одна из моих функций возвращает подпись приложения (objEvaluationPage.getApplicationSignature)
В первом @Given я передал значение, возвращаемое этой функцией в переменную подписи, я успешно использовал это значение в objEvaluationPage.setSignature (signature) в первом @ Given.
Я также хочу использовать переменную подписи во втором @Given: objEvaluationPage.setSignature (signature);
но значение подписи не передается, в консоли (первая строка из журнала выполнения) у меня есть signature2: null, возвращенное из System.out.println ("signature2:" + signature);
Почему я не могу использовать значение переменной подписи в секунду @Given?
package opi.features.evaluation;
import com.codeborne.selenide.Selenide;
import com.github.javafaker.Faker;
import cucumber.api.java.en.Given;
import cucumber.api.java.en.When;
import cucumber.api.java.en.Then;
import opi.pages.evaluation.EvaluationPage;
import opi.pages.evaluation.applicationView.PermissionsPage;
import opi.pages.programs.LoginPage;
import opi.utils.PropertiesReader;
import java.io.IOException;
public class ExpertFeatures {
public String signature;
String programName = "P";
EvaluationPage objEvaluationPage = new EvaluationPage();
LoginPage objLoginPage = new LoginPage();
PermissionsPage objPermissionsPage = new PermissionsPage();
Faker faker = new Faker();
@Given("^UserEmployee finds application with status formal evaluation accepted$")
public void useremployeeFindsApplicationWithStatusFormalEvaluationAccepted() throws IOException, InterruptedException {
Selenide.open( new PropertiesReader().getEvaluationUrl());
objLoginPage.login("mateuszkrasny@gmail.com","Wniosek1!");
objEvaluationPage.selectAllPrograms();
objEvaluationPage.deselectAllPrograms();
objEvaluationPage.setProgram(programName);
objEvaluationPage.selectAllStatuses();
objEvaluationPage.deselectAllStatuses();
objEvaluationPage.checkFormalPositive();
signature = objEvaluationPage.getApplicationSignature();
objEvaluationPage.checkFirstAvaiableApplication();
System.out.println("signature: "+signature);
objEvaluationPage.setSignature(signature);
}
@When("^UserEmployee adds expert to application$")
public void userEmpAddsExpertToApplication() throws IOException, InterruptedException {
// objEvaluationPage.clickAssignReviewer();
// objEvaluationPage.setExpert("Krasny Mateusz");
// Thread.sleep(2000);
}
@Then("^UserExpert is added to application$")
public void userExpIsAddedToApplication() throws IOException, InterruptedException {
}
@Given("^UserEmployee is on permissions page of application with added expert$")
public void userEmpIsOnPermissionsPageOfApplicationWithAddedExpert() throws IOException, InterruptedException {
objEvaluationPage.selectAllStatuses();
System.out.println("signature2:"+signature);
objEvaluationPage.setSignature(signature);
objEvaluationPage.clickOnFirstAvaiableApplication();
objPermissionsPage.clickPermissionTab();
}
@When("^UserEmployee removes expert from application$")
public void useremployeeRemovesExpertFromApplication() throws InterruptedException {
objPermissionsPage.clickDeleteBtn();
objPermissionsPage.addDeleteNote(faker.twinPeaks().quote());
}
@Then("^UserExpert was removed from application$")
public void userexpertWasRemovedFromApplication() {
}
}