元素的定位是自动化测试的核心, 要想操作一个对象, 首先应该识别这个对象. 一个对象就是像一个人一样, 她们会有各种的特征, 我们可以通过一个人的身份证号, 姓名等找到这个人. 那么对象也有类似的属性, 我们可以通过这个属性找到这个对象.
webdriver提供了一系列的对象定位方法, 常用的有以下几种:
- id
- name
- tag name
- class name
- css
- XPath
- link text
- partial link text
id和name
id和name是我们最常用的定位方式, 因为大多数空间都有这两个属性, 而且在对控件的id和name命名时一般使其有意义也会取不同的名字, 通过这两个属性定位一个属性变得比较容易
通过前端工具, 例如Chrome的F12, 找到了百度输入框的属性信息:
<input id = "kw" class = "s_ipt" type = "text" maxlength = "100" name = "wd" autocomplete = "off">
id = “kw” 通过**find_element_by_id(“kw”)函数就是捕获到百度输入框
name = “kd” 通过find_element_by_name(“wd”)**函数也同样可以捕获百度输入框
tag name和class name
从上面的百度输入框中的属性信息中, 我们可以看到, 不单单只有id和name属性, 比如class和tag name
- input就是一个标签的名字, 可