原文地址http://blog.csdn.net/tea_wu/article/details/21080789

selenium-webdriver中获取页面元素的方式有很多,使用注解获取页面元素是其中一种途径,

方式有3种:@FindBy、@FindBys、@FindAll。下文对3中类型的区别和使用场景进行介绍

1)@FindBy

@FindBy(id= "A")
private WebElement A;

2)@FindBys

@Findbys({@FindBy(className = "A"),@FindBy(className = "B")
})
public WebElement AB;

@FindBys 相当于是取交集,是先根据第一个注解获取到对应元素,然后根据第二个注解再帅选出对应的页面元素,。如先找到符合classname=A的元素,再在这些元素集中找到classname=B的所有元素

就像如下操作:

driver.findElement(<By_FindByA>).findElement(<By_FindByB>).

3)@FindAll

@FindAll({@FindBy(id = "A"),@FindBy(id = "B")
})
public List<WebElement> aAndB;

@FindAll相当于是取并集,如找到id=A和id=B的所有元素

转载于:https://www.cnblogs.com/111testing/p/8373370.html

@FindBy、@FindBys、@FindAll的区别相关推荐

  1. re.search与re.findall的区别

    re.search和re.findall的区别和联系 re.search 函数返回的结果是 一个Match对象 常见的获得对应的值的方法 通过Match对象内的group编号或命名,获得对应的值 re ...

  2. BeautifulSoup里“find_all“和“findAll“的区别

    模块 如果使用BeautifulSoup 4 版本,导入方式为: from bs4 import BeautifulSoup "find_all"和"findAll&qu ...

  3. python re.match、re.search以及re.findall的区别

    第一部分re.match() re.match(a,b),a放正则表达式(regular expression),b放要匹配的字符串.re.match总是从字符串的第一个字符(包括数字)开始匹配,且只 ...

  4. match、search、findall用法区别

    match:从字符串首字母开始匹配,如果匹配成功,则返回Match对象,反之返回空.若想获取返回Match对象转为值,则用group()方法 search:从这个整个字符串匹配,如果匹配成功,则返回M ...

  5. 【整理】Python中的re.search和re.findall之间的区别和联系 + re.finall中带命名的组,不带命名的组,非捕获的组,没有分组四种类型之间的区别

    之前自己曾被搞晕过很多次. 后来使用这些函数次数多了之后,终于比较清楚的弄懂了两者之间的区别和关系了. 尤其是一些细节方面的注意事项了. 在看下面的总结和代码之前,请先确保你对如下基本概念已经有所了解 ...

  6. Python 正则表达式:findall

    本文以匹配×××IP为例,介绍re模块的findall的用法: 返回值->列表 复杂匹配 = re.compile(正则表达式): 将正则表达式实例化 + re.findall(要匹配的字符串) ...

  7. Python正则表达式_常用匹配方法findall

    正则匹配方法之findall 核心要点: findall()是将所有匹配到的字符,以列表的形式返回. 如果未匹配,则返回空列表. 一.pattern.findall()方法 语法: findall(s ...

  8. 判断是不是链接 正则_Python 正则表达式 保姆级教程,小学生都看得懂!!

    ~点击 蓝字 关注,获取更多资源~ 0 前言 上一篇文章,2020,还不会正则???,和小伙伴们一起学习了 Python 中的正则表达式,读完之后,总感觉少了点什么东西,无法尽兴?就好像爱你们的心少了 ...

  9. Python 之Re模块(正则表达式)

    一.简介 正则表达式本身是一种小型的.高度专业化的编程语言,而在python中,通过内嵌集成re模块,程序媛们可以直接调用来实现正则匹配. 二.正则表达式中常用的字符含义 1.普通字符和11个元字符: ...

最新文章

  1. login组件的两种用法_vue2组件系列第四十节:NoticeBar 通告栏
  2. Linux mmap
  3. python sql语句生成_python Django 生成sql语句
  4. 使用WebService如何实现分布式事务
  5. VMware和NVIDIA推出新一代混合云架构
  6. Apache出现AH00558错误解决办法
  7. 虚实结合:无需人工标注的可泛化行人再辨识
  8. 误删除Linux中libc.so.6文件急救办法
  9. 微信灰度测试“相关阅读”功能 公众号文章下推荐延伸内容
  10. 鸿蒙眼镜怎么样,Babiators儿童太阳镜怎么样 Babiators儿童太阳镜测评
  11. Linux实验——缓冲区溢出漏洞实验
  12. 一位程序员从业余项目被收购中所学到的
  13. 【MFC】字体类——CFont
  14. Python面向对象基础(下)—Python Day9
  15. 15b万用表怎么测电容_手工改造丨把15B万用表隐藏的功能利用起来~
  16. QOS中PQ,CQ.RR,WFQ,CBWFQ,LLQ区分
  17. 第一方数据,第二方数据,第三方数据:你了解多少?
  18. Andriod studio 学习 之 Recyclerview
  19. file_get_contents failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request
  20. GitHub 热点速览 Vol.14:周获 2k+ Vim³ 掀起三维编程风

热门文章

  1. DTCC 2020 | 阿里云张鑫:阿里云云原生异地多活解决方案
  2. php转java知乎_做了三年多的php,在上一家公司转java一年多,如何找工作
  3. 《江湖X:汉家江湖》两万人在线服务器架构
  4. 程序员养发(老师付推荐)
  5. python jieba库用法
  6. nginx配置文件中location与root访问时的联系
  7. MongoDB 查询时间差问题修复
  8. html div转换图片
  9. ElasticStack系列之八 _source 字段
  10. 分享一些优化博客的心得