Я автоматизирую свой проект, используя объектную модель страницы. Но я заметил, что всякий раз, когда я пишу два разных сценария для автоматизации одного и того же объекта страницы, мне нужно инициализировать элементы для этого тестового примера каждый раз, когда я пишу тестовый пример с использованием метода Pagefactory.initElements. Есть ли способ, чтобы это можно было инициализировать только один раз и можно было повторно использовать во всех тестовых примерах?
Я попытался сделать ссылочную переменную, т.е., например. "manorgpom ort=PageFactory.initElements(getdriver(), manorgpom.class);" ort должен быть статическим, но он дает исключение нулевого указателя. Я инициализировал их вне своих тестовых случаев и сделал ссылочную переменную статической, но безуспешно.
@Test(priority=3)
public void orgact() throws Exception {
manorgpom ort=PageFactory.initElements(getdriver(), manorgpom.class);
getdriver().manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
ort.actorg();
Thread.sleep(5000);
}
@Test(priority=4)
public void orgadd() throws Exception{
manorgpom ort=PageFactory.initElements(getdriver(), manorgpom.class);
getdriver().manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
ort.addorg();
Thread.sleep(10000);
}
Как вы видите выше, мне нужно инициализировать веб-элементы каждый раз, когда я пишу тестовый пример. Каждый раз мне нужно упомянуть "manorgpom ort=PageFactory.initElements(getdriver(), manorgpom.class);". Я хочу оптимизировать это.
Это фрагмент класса managementorgpom.
public class manorgpom extends Basetest{
@FindBy(xpath="//*[@href='/organization']")
WebElement orglink;
@FindBy(xpath="//*[@class='anticon anticon-filter']")
WebElement filter;
@FindBy(xpath="//*[@placeholder='e.g. High School USA']")
WebElement filternametxt;
@FindBy(xpath="//*[text()='Activate']")
WebElement activatelink;
@FindBy(xpath="//*[@placeholder='e.g. Johnny']")
WebElement contactfirstname;
Когда я сделал переменную ссылки орта статической, я получаю java.lang.nullPointerException каждый раз, когда запускаю набор. Помогите пожалуйста мне.