我一直在使用私有访问修饰符来定位通过@FindBy
找到的Web元素。例如:
@FindBy(id="signin")
private WebElement loginButton;
然后我将使用getter和setter暴露这个Web Element。但是我在某个地方看到说,在使用@FindBy
时不需要使用getter和setter,因为它内部具有私有访问修饰符。这是正确的吗?
我一直在使用私有访问修饰符来定位通过@FindBy
找到的Web元素。例如:
@FindBy(id="signin")
private WebElement loginButton;
然后我将使用getter和setter暴露这个Web Element。但是我在某个地方看到说,在使用@FindBy
时不需要使用getter和setter,因为它内部具有私有访问修饰符。这是正确的吗?
因为它在内部具有私有访问修饰符。这是正确的吗?
那不正确。
这取决于您希望如何访问按钮。
您更喜欢用户使用
pageClass.loginButton.click()
或者
pageClass.getLoginButton().click()
如何处理由你决定。 @FindBy
只是一个注解,它可以使用相同的值进行实例化,而不受其访问修饰符的影响。
pageClass.loginButton.click()
或者pageClass.getLoginButton().click()
- Jasvinder Singh ChughpageClass.loginButton.click()
。主要是因为维护方便。当页面中的元素被删除时,您不需要担心getter和setter。如果使用getter和setter,可能会出现维护噩梦。 "嘿,我有这个WebElement,为什么不能使用get*()?哦...因为它没有getter" :) - ddavison