首先有一点大家自己要知道,一个简单的东西非得说来别人听不懂,来显得自己的高大上,不管哪个行业多是如此。只要自己搞懂了,自己也变成了那部分人。
什么叫做数据驱动?
答:所谓数据驱动就是同一段代码,参数一样,但是函数内部做了处理,所以输入不同的数据(值),得到不同的结果。比如果输入一个名字,你输入张三得到的结果是帅哥,你输入小雨得到的结果是美女,那这个就是数据驱动,就这么简单,代码还是最开始写的代码并有什么改变,只是输入值不一样结果也不一样,代码内部有分支选择而已
什么叫做关键字驱动?
答:所谓关键字驱动就是将数据驱动里的数据改为关键字而已。我们数据驱动是程序读取数据进行执行,那么是哪些代码模块调取的数据呢?数据驱动和关键字驱动在测试里说的最多,那我们就以UI自动化中界面元素定位为例来说明,我改变定位器的值,后续的代码没有任何改变,但是得到的值完全不一样,通过改变关键字,从而改变数据的输入位置,这就叫做关键字驱动,数据驱动结果是驱动代码得到不同的数据,关键字驱动结果是驱动代码得到不同代码
```python
class loginpage(basepage):
# 定位器
userloc = (By.XPATH, "//*[@id='ajax_login_form']/div/div[1]/input")
pwdloc = (By.XPATH, "//*[@id='ajax_login_form']/div/div[2]/input")
buttonloc=(By.XPATH, "//*[@id='ajax_login_form']/div/div[3]/a")
zhuce=(By.XPATH, "//*[@id='ajax_login_form']/div/div[5]/div/a[1]")
# 打开页面
def open(self):
self._open(self.url)
# 输入关键词
def user_loc(self,user):
self.find_element(*self.userloc).clear()
self.find_element(*self.userloc).send_keys(user)
# 点击搜索按钮
def pwd_loc(self,pwd):
self.find_element(*self.pwdloc).clear()
self.find_element(*self.pwdloc).send_keys(pwd)
#定位登录按钮
def login_submit(self):
self.find_element(*self.buttonloc).click()
#定位注册按钮
def zhuce_submit(self):
self.find_element(*self.zhuce).click()