如果@FindBy不返回任何元素,我们是否会收到错误消息,如我所见,@ FindBy可用于将0转换为多个元素。
场景: @FindBy(id =“ btn”) 私有WebElement searchButton; //允许引用单个元素
情况1:如果没有id为“ btn”的元素,那么结果是什么? 情况2:如果我们有多个id为“ btn”的元素,那么结果将是什么?
请澄清。
答案 0 :(得分:0)
调用PageFactory.initElements
时不会收到错误,未找到的元素将设置为null
。但是,当您尝试使用该元素时,您会得到NullPointerException
。
答案 1 :(得分:0)
情况1:如果没有id为“ btn”的元素,那么结果是什么?
org.openqa.selenium.NoSuchElementException: no such element: Unable to locate element: {"method":"name","selector":"<invalid name>"}
情况2:如果我们有多个id为“ btn”的元素,那么结果将是什么?
由于我们有多个元素,由于模棱两可,我们无法执行任何操作。
org.openqa.selenium.WebDriverException: unknown error: cannot focus element