첫 페이지 개체 모델 테스트를 만들고 있습니다. Selenium's test design considerations에 기초하여 페이지 객체가 인스턴스화 될 때 특정 요소가 발견되는지 확인하고 싶습니다.페이지 개체 요소에 동적으로 액세스하기
가, 그리고 페이지 객체 내에 있어야 할 수있는 하나, 하나, 검증하고 그 페이지가 페이지에 가능성이 중요한 요소가 올바르게 장착되었는지 확인하는 것입니다.
리플렉션에 의존하지 않고이를 해결할 방법이 있습니까?
public class PageObject
{
[FindsBy(How = How.Name, Using = "q")]
private IWebElement q1 { get; set; }
[FindsBy(How = How.Name, Using = "qq")]
private IWebElement q2 { get; set; }
protected IWebDriver webDriver;
public PageObject(IWebDriver webDriver)
{
this.webDriver = webDriver;
PageFactory.InitElements(webDriver, this);
HighPriorityElementsFound();
}
private bool HighPriorityElementsFound()
{
// how to verify all private IWebElements elements here?
}
}
기본적으로 내가 성취하려는 것을 말하고 있지만 질문에 답할 수 없습니다. 난 하드 코딩 대신 동적으로'이 특정 페이지에만 유일하게 존재하는 일부 요소 '를 추출하려고합니다. 마지막 문장으로 무엇을 의미하는지 확신 할 수 없습니다. 생성자에서'HighPriorityElementsFound'를 호출합니다. 그것이 방법이든 아니든 상관 없습니다. – filur
스크립트는 방문한 적이없는 사이트의 다른 모든 페이지와 고유 한 요소를 어떻게 식별 할 수 있습니까? 두 번째 점에서, 함수는 재사용 가능한 코드를위한 것이다. 'HighPriorityElementsFound()'는 결코 재사용되지 않으므로 왜 함수에 넣어야합니까? 또한 'bool'을 반환하지만 반환 값을 포착하지 않으므로 'bool'을 반환해야하는 이유는 무엇입니까? – JeffC