0

우리가 페이지 공장을 사용하여 페이지 개체를 만들 전달하는 문자열을 매개 변수화 할 수 있도록 방법이 있나요매개 변수 전달

예 : 내가 밀어하려고

String v = "password"; 
@FindBy(name=v) 
private WebElementFacade password_Field; 

문자열은 @ FindBy에 v하지만 오류가 발생합니다.

내가 FindBy.name는 상수 표현

+1

질문에 예외 스택 추적을 추가하십시오. – Grasshopper

+0

은 변수 v를 최종 키워드로 선언하는 경우 작동합니다. – Grasshopper

+0

최종 키워드를 사용하면 작동한다는 데 동의합니다. 하지만 나는 v의 가치를 바꿀 수 있어야한다. 그것을위한 방법이 있나. –

답변

0

예 수 주석의 값 을해야한다 속성 얻고있다. 것이 가능하다. 아래의 솔루션을 찾아주세요 : 대신 @FindBy를 사용하여 Page에서

을의 PageWebElementFacade 사용 find 방법을 얻을 다음 작업을 위해 사용합니다.

예를 들어

:

public void click(String elementId) { 
    WebElementFacade element = find(ById.id(elementId)); 
    element.click(); 
} 

이 나를 위해 완벽하게 작동합니다 : 당신이 요소에 click해야하는 경우, 아래의 코드를 참조하시기 바랍니다. 그리고 요소 ID는 .story 예제에서 끝나고 있습니다.