• 12
  • 12
分享
  • Python-Selenium-定位详解——软件测试圈
  • 北极 2022-02-25 09:37:49 字数 942 阅读 1599 收藏 12

一、id定位

find_element_by_id()

采用id属性进行定位。例如在百度页面中输入关键字 Selenium 进行搜索。百度部分关键html源码如下:

图片1.png

百度输入框和百度一下的按钮都有id,那么定位代码如下:

图片2.png

二、name定位

图片3.png

三、class_name定位

图片4.png

四、xpath定位

find_element_by_xpath()

xpath是XML路径语言,它可以用来确定xml文档中的元素位置,通过元素的路径来完成对元素的查找。HTML就是XML的一种实现方式,所以xpath是一种非常强大的定位方式。

获取xpath、css_selector路径方法

打开谷歌浏览器-->打开百度-->键盘点击F12--点击定位位置-->点击源码位置-->右件copy

图片5.png

绝对路径

如百度搜索框的绝对路径xpath定位:

图片7.png

相对路径(属性标签等)

搜索框还可以利用id和name属性去定位:

图片6.png

标签名input也可以定位,只要在该标签内,任意属性都可以,比如搜索框的maxlength属性:

图片8.png

注:如果元素的单个属性无法确定其唯一性,可以用and连接多个属性去确定

五、css_selector定位

find_element_by_cssselector()
CSS属性定位可以比较灵活地选择控件的任意属性,定位方式也会比xpath快

图片9.png

注:class是用.标记,id是用#标记

图片10.png

图片11.png

六、tag_name定位

find_element_by_tag_name ()

html标签,如input、a、form等
一般定位如下:find_element_by_tag_name("input"),因为一个html一个标签存在多个因此这种定位方式用的比较少

七、link_text 定位

find_element_by_partial_link_text()

定位标签<a>:

图片12.png

八、Xpath&Css定位方法速查表

 图片13.png

九、By定位

图片14.png

十、elements复数定位

说明:复数定位方式每次取到的都是具有相同类型属性的一组元素,所以返回的是一个list值

图片15.png

如上图需要定位到时视频,再点击视频链接

图片16.png

十一、JS的定位

#以下Element 返回单值,Elements复数返回列表值

图片17.png

源码举例

图片18.png

以上为常用的四种js定位方式都需要执行的就execute_script())

图片19.png

源码举例

图片20.png


来源:百度文库

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   一、定义:以执行组织的名义支持过程的持续改进活动  核心理念:兼顾项目管理和可交付成果两方面。  质量影响程度(代价由大到小):客户发现缺陷 > 交付前检测和纠正缺陷(验收或回归) > 检查并纠正过程本身 > 质量融入规划和涉及 > 质量文化  项目管理(过程优化)和项目可交付产品(质量治理)。  iso9000里质量是指一系列内在特性满足要求的程度;等级约定于优先级。  质量成本:产品生命周期中预防不符合要求、为评价产品或服务是否符合要求以及未达到要求(返工)的发生成本。  · 预防和评估成本:一致性成本。  · 劣质成本:内部团队发现的问题和外部用户发...
            0 0 1223
            分享
          •   自我看来:  软件测试这个行业发展得比较稳定,疫情虽然也波及到了互联网的道路上,但软件企业要靠软件产品的质量去占领市场这一点始终没有改变,“没有开发这个产品都不可能做出来,而没有测试,产品的bug可能比较多而已“这里论断走远了。换位思考,软件测试也会成为一个软件企业的生存命脉。用户以及你我都不愿意使用体验不好的产品。所以测试这关过不了,产品做出来也得不到在市场上生长的机会。So软件测试会越来越受到重视。  基于以上一点。我不否认没有前瞻性的公司以往对待测试员的不重视。所以面对软件与技术的更新换代,部分测试人员因为知识不成体系或者学得不够扎实,导致技术水平不过关,难当大任。而企业更需要技术扎...
            0 0 632
            分享
          • Web测试主要分为六个部分:功能测试、性能测试、用户界面测试、兼容性测试、安全测试、接口测试1、功能测试1.1 链接测试链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。链接测试可分为三个方面。首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。链接测试可以自动进行,现在已经有许多工具可以采用。链接测试必须在集成测试阶段完成,也就是说,在整个Web应用系统的所有页面开发完成之后进行链接测试。采取措...
            11 11 2713
            分享
          •   近年来,随着国际形势和网络空间环境日趋复杂,各方面对网络安全重视程度日益提升,网络安全也已纳入了国家战略。在此背景下,系统的安全测试与防护就显得越来越重要,项目组在进行基于owasp zap工具进行安全扫描过程中,对工具的使用及扫描流程进行了深入分析,对常规扫描方式进行了优化。  zap提供了强大的路径爬虫及漏洞扫描功能,常规方式下,可以通过配置代理来录制前台页面,点击系统页面功能后抓取网站路径,再通过“爬行”、“强制浏览目录”等功能进行路径的分析与扩展,最后通过“主动扫描”功能进行漏洞扫描,生成漏扫报告。但这种方式抓取到的网站路径并不能保证是系统的全量路径,也就可能会导致扫描结果不详尽。...
            15 15 995
            分享
          •   测试行业现状  继教育培训、社区团购领域大幅度裁员之后,互联网大厂裁员消息也开始陆续传出,百度爆出游戏部门300多人接近全部被裁,直播业务被裁员90%;爱奇艺大规模裁员,裁员比例在20%到40%;而腾讯在年度员工大会表示,PCG事业群将开始大规模人员优化,此外,字节、阿里、携程等一众互联网企业,都开始削减支出、裁员过冬,不得不承认互联网企业的寒冬已来。  互联网仍在发展,但已经是存量市场了,对人员规模的需求正在放缓。在存量市场里,冗余人员和低效人员会被淘汰、被外包,而优秀的人才也会一直受到招聘方的青睐。所以我们就看到了近期行业里冰火两重天的一幕,一边是大量的低端测试工程师被淘汰、被外包和被...
            0 0 888
            分享
      • 51testing软件测试圈微信