在我们当前的自动化(使用 Selenium/WebDriver/Java)中,我们使用@FindBy
非常广泛。例如:
@FindBy(css="a[name='bcrumb']") protected List<WebElement> breadCrumbLinks;
@FindBy(id="skuError") protected WebElement skuError;
@FindBy(className="reducedPrice") protected List<WebElement> reducedPrice;
@FindBy(partialLinkText="Injinji RUN 2.0") protected WebElement playButton;
@FindBy(linkText="annual member refund") protected WebElement annualMemberRefund;
@FindBy(xpath="//li[@itemprop='price']") protected WebElement productPrice;
根据定义,@FindBy
可以使用以下内容定位选择器:using、id、name、className、css、tagName、linkText、partialLinkText 和 xpath。
最近,我们的前端开发人员提议我们实现一个以“test=”开头的新属性类。@FindBy
我认为这是一个好主意,因为我们可以通过查找文本简介而不是固有使用的值来找到 WebElements 。我的问题是,扩展 OR 的现有功能,@FindBy
创建一种搜索我们在测试中使用的 WebElements 的新方法会更好吗?