软件测试_web自动化_itheima_selenium

1安装selenium包

2元素定位 

 各个定位的示范

1. driver.find_element_by_xpath(value)                      

2. driver.find_element_by_css_selector(value)              

3. driver.find_element_by_id(value)                          

4. driver.find_element_by_name(value) 

5. driver.find_element_by_class_name(value)                      

6. driver.find_element_by_tag_name(value)                  

7. driver.find_element_by_link_text(value)                      

8. driver.find_element_by_partial_link_text(value)

一般用于a标签、定位元素内容必须全部匹配
7. driver.find_element_by_link_text(value)                      
这个可以是模糊匹配、但是必须代表唯一性—__推荐
8. driver.find_element_by_partial_link_text(value)

xpath 

 1. driver.find_element_by_xpath(value)   

能使用相对路径不使用绝对路径 

css定位 

#1.使用css id.选择器定位用户名输入admin
driver.find_element_by_css_selector("#userA").send_keys("admin")
#2.使用css属性选择定位密码框输入123456
driver.find_element_by_css_selector("[name='passwordA']")send_keys("123456")
#3.使用css cLass选择器定位电话号码:18611112222
driver.find_element_by_css_selector(".telA").send_keys("18611112222")
#4.使用css元素选择器定位span标签获取文本值
span driver.find_element_by_css_selector("span").text
print("获取的span标签文本值:",span)
#5.使用层级选择器定位email输入[email protected]
driver.find_element_by_css_selector("p>input[placeholder:='电子邮箱A']")

 3元素操作

获取元素信息

 

鼠标操作

键盘操作 

元素等待 

隐式等待:

 

显式等待: 

#实例化NebDriverWait()并调用until方法
#注意:调用until方法返回的一定是一个元素
username WebDriverWait(driver,timeout=10,poll_frequency=0.5).until(lambda x:x.find_element_by_id("#user")).send_keys("admin)
#注意:此时username还不是元素,只有代码运行起来才是元素
username.send_keys("admin")


WebDriverWait (driver,timeout=10,poll frequency=0.5).until(lambda x:x.find element_by_id("#user")).send_keys("admin")
参数:
timeout:超时时间
pol1_frequency:访问频率,默认0.5秒找一次元素
x:x为driver,它是WebDriverWait:类将传入的driver赋值给类self.driver,unil方法调用了self,_driver;