有些HTML页面中的元素中属性较少,经常有找不到id、class、name等常用属性的时候,这个时候xpath、css就能很好的识别到我们的元素。

  Firefox和chrome浏览器中均有xpath、css插件工具。

  以下为通过xpath方法写的测试用例:

     def test_xpath(self):
u'''采用xpath识别元素'''
self.browser.find_element_by_xpath(".//*[@id='kw']").send_keys("xpath test") #采用id,.//input[@id='kw']
self.browser.find_element_by_xpath(".//*[@id='su']").submit() #采用id
log.info("采用xpath识别页面中的属性,[id]")
time.sleep()
self.browser.find_element_by_xpath(".//*[@name='wd']").clear() # 清空原关键字 #采用name,.//input[@name='wd']
self.browser.find_element_by_xpath(".//*[@class='s_ipt']").send_keys("selenium auto test") #采用class,.//input[@class='s_ipt']
#self.browser.find_element_by_xpath(".//*[@type='submit']").submit() #采用type,.//input[@type='submit']
self.browser.find_element_by_xpath("//form[@id='form']/span/input[@value='百度一下']").submit() #提交搜索
log.info("采用xpath识别页面中的属性,[class、type]")
'''
.//*[@id='kw']
.//*[@name='wd']
.//*[@class='s_ipt']
.//*[@autocomplete='off']
.//*[@type='submit']
.//input[@autocomplete='off']
.//input[ @ type = 'submit']
//form[@id='form']/span/input[@value='百度一下']
'''

  

selenium采用xpath方法识别页面元素的更多相关文章

  1. selenium采用find_element_by方法识别页面元素

    主要是练习获取页面中的各元素,马克 # coding:utf-8 import time from selenium import webdriver import unittest from pyt ...

  2. Python3.x:Selenium中的webdriver进行页面元素定位

    Python3.x:Selenium中的webdriver进行页面元素定位 页面上的元素就像人一样,有各种属性,比如元素名字,元素id,元素属性(class属性,name属性)等等.webdriver ...

  3. selenium 总结篇,常见方法和页面元素的操作

    今天,总结一下selenium怎么操作web页面常见的元素. 主要有: 上传 alter dialog prompt dialog confirm dialog select list radio b ...

  4. selenium总结篇,常见方法和页面元素的操作【转】

    原文:http://www.cnblogs.com/tobecrazy/p/4570494.html 今天,总结一下selenium怎么操作web页面常见的元素. 主要有: 上传 alter dial ...

  5. selenium java maven 自动化测试(二) 页面元素获取与操作

    在第一节中,我们已经成功打开了页面,但是自动化测试必然包含了表单的填写与按钮的点击. 所以在第二章中我以博客园为例,完成按钮点击,表单填写 还是以代码为准,先上代码: package com.ryan ...

  6. By.Xpath快速定位页面元素常用方法

    先看一看xpath的语法 我们将在下面的例子中使用这个 XML 文档. <?xml version="1.0" encoding="ISO-8859-1" ...

  7. 用XPath定位Web页面元素时,如何快速验证XPath语句是否正确?

    在使用Selenium做Web UI自动化测试的过程中,XPath是一种定位页面元素的常用方式.然而,面对某些元素的XPath路径过于复杂,我们想快速验证拼凑的Xpath语句是否正确时,该怎么办呢?这 ...

  8. Selenium WebDriver- 操作frame中的页面元素

    #encoding=utf-8 import unittest import time from selenium import webdriver from selenium.webdriver i ...

  9. Selenium WebDriver-通过ActionChains实现页面元素拖拽

    #encoding=utf-8 import unittest import time import chardet from selenium import webdriver class Visi ...

随机推荐

  1. JAVA 调用exe程序执行对应的文件 (个人用于编译Java文件)

    需求: 需要利用Java程序,来调用计算机本身的黑窗口,来将特定的Java文件编译成对应的字节码文件. 实现思路: 通过调用Java的Runtime类,每个 Java 应用程序都有一个 Runtime ...

  2. PyCharm选中文件夹新建时Directory与Python package的区别

    pycharm创建普通的directory和package时都是在硬盘上建立一个文件夹.但是建package时会在这个文件夹中自动地生成一个空的__init__.py文件.python的一个包是一个带 ...

  3. MySQL函数--(1)

    /*函数与存储过程的区别1.存储过程:可以有0个返回值,可以有多个返回值函数:有且仅有一个返回值*/ #创建语法create FUNCTION 函数名(参数列表) return 返回类型BEGIN函数 ...

  4. Sptringboot 添加子项目

    1:复制一个子项目,修改项目名 2:修改启动类 3:修改pom.xml 4:打开project structure  选择Modules 下一步下一步 5:添加主项目的pom.xml  在<mo ...

  5. 2019中山大学程序设计竞赛 Triangle

    今天水了一发hdu上的中山校赛 这个题交了将近十遍才过...... 就是说给 n 个木棍,如果能找出3个能组成三角形的木棍就输出yes 反之输出no 乍一看很简单 一个排序遍历一遍就好了 但是n值太大 ...

  6. Jenkins+Git+Maven搭建自动化构建平台

    http://blog.csdn.net/xlgen157387/article/details/50353317

  7. codevs 2370 小机房的树(LCA)

    过了这么长的时间终于开始看LCA了... 有一次训练题卡在LCA当时不会...拖了好久好久...其实现在还是不会... 只会tarjan... 传送门 板子题咯 tarjan的算法就是基于先序遍历的顺 ...

  8. flex布局实例demo全解

    上篇文章介绍了Flex布局的语法,今天介绍常见布局的Flex写法. 你会看到,不管是什么布局,Flex往往都可以几行命令搞定. 我只列出代码,详细的语法解释请查阅<Flex布局教程:语法篇> ...

  9. pointer-events: none

    如果为某个元素样式设置了“pointer-events: none ”,事件.连接.悬浮样式都没有了 如果为a标签设置了“pointer-events: none ”,点击a标签,不会跳转到链接地址, ...

  10. Centos 利用yum安装卸载软件常用命令[转载]

    一.使用yum安装和卸载软件,有个前提是yum安装的软件包都是rpm格式的. 安装的命令是,yum install ~,yum会查询数据库,有无这一软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲 ...