1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > selenium 自动化测试工具(二)常用定位方式

selenium 自动化测试工具(二)常用定位方式

时间:2023-04-15 01:58:31

相关推荐

selenium 自动化测试工具(二)常用定位方式

注册A的页面

<!DOCTYPE html><html lang="zh-cn"><head><meta charset="UTF-8"><title>注册A</title><style type="text/css">body{background: #F0F0F0}form{width: 500px;background: #C7C7E2;padding: 10px;margin-top: 10%;margin-left: 30%}input{padding: 5px;background: #f8f8f8}button{padding: 8px; background: #f8f8f8;border-radius: 5px}button:hover{padding: 10px; background: #2F4F4F}input:focus{background: #FFC0CB}/*span{display: none}*/</style><script type="text/javascript"></script></head><body><form action=""><div id="zc"><fieldset><legend>注册用户A</legend><p id="p1"><label for="userA">账号A</label><input type="text" name="userA" id="userA" placeholder="账号A" required="" value=""></p><p><label for="password">密码A</label><input type="password" name="passwordA" id="passwordA" placeholder="密码A" value=""></p><p><label for="telA">电话号码A</label><input type="text" name="telA" id="telA" placeholder="电话A" class="telA" value=""></p><p><label for="emailA">电子邮件A</label><input type="text" name="emailA" id="emailA" placeholder="电子邮箱A" value=""></p><button type="submit" value="注册A" title="加入会员A">注册用户A</button><hr><p><span>Span_tagName</span></p><p><a href="" id="fwA">访问 新浪 网站</a></p><p><a href="" id="AAA">AA 新浪 网站</a></p><p><a href="" rel="nofo"></a></p><p><a href="logout">我是a标签A</a></p><p><a href="" rel="">退出</a></p><hr><p><select name="selecta" id="selectA"><option value="bj">A北京</option><option value="sh">A上海</option><option value="gz">A广州</option><option value="cq">A重庆</option></select></p><hr><form action=""><label for=""><input type="radio" name="fruit" value="pga" id="pga">A苹果</label><label for=""><input type="radio" name="fruit" value="jza" id="jza">A橘子</label><label for=""><input type="radio" name="fruit" value="xja" id="xja">A香蕉</label><label for=""><input type="radio" name="fruit" value="lia" id="lia" checked="">A梨</label><label for=""><input type="radio" name="fruit" value="xga" id="xga">西瓜</label></form><form action=""><input type="checkbox" name="checkbox" value="汽车" id="qcA">汽车A<br><input type="checkbox" name="checkbox" value="购物" id="gwA">购物A<br><input type="checkbox" name="checkbox" value="旅游" id="lyA" readonly="">旅游A <br><input type="checkbox" name="checkbox" value="音乐" id="yyA"disabled="">音乐A <br><input type="button" value="取消A" disabled="" id="cancelA"><br><input type="button" value="alerta" id="alerta" onclick="al()"> <br><input type="file" name="upfilea" value=""></form></fieldset></div><script>function al(){alert('我被被点击啦!')}</script></form><!-- <a href="" target="myframe1">新浪</a><a href="" target="myframe1">hao123</a><a href="" target="myframe2">淘宝</a><a href="" target="myframe2">百度</a><br><iframe src="" frameborder="1" height="500" width="48%" name="myframe1"></iframe><iframe src="" frameborder="1" height="500" width="48%" name="myframe2"></iframe> --></body></html>

八种定位方式

# 导selenium包from selenium import webdriverfrom time import sleepfrom mon.by import By# 实例化浏览器对象driver = webdriver.Chrome()# 定义url,两种终止转移方法# url = 'D:\\测试相关\\py\\自动化05期-007-Selenium常用定位方法\\html\\注册A.html'url = r'D:\测试相关\py\自动化05期-007-Selenium常用定位方法\html\注册A.html'# 打开urldriver.get(url)# 1.通过 id 进行定位# 第一种写法# driver.find_element_by_id('userA').send_keys('admin')# 第二种写法:username = driver.find_element_by_id('userA')username.send_keys('admin')# 2.通过 name 定位driver.find_element_by_name('userA').send_keys('test')# 3.通过 classname 定位driver.find_element_by_class_name('telA').send_keys('13110030262')# find_element_by_tag_name() 返回符合条件的第一个元素# 4.通过标签名定位 input 标签(符合条件的第一个元素是用户名编辑框)driver.find_element_by_tag_name('input').send_keys('123')# 5.通过全部文本内容,定位到链接元素,click()单击driver.find_element_by_link_text('访问 新浪 网站').click()# 6.通过部分文本内容,进行定位driver.find_element_by_partial_link_text('访问').click()# 7.通过xpath 进行定位# xpath 绝对路径定位 p[1]-->fieldset 标签下第一个p标签driver.find_element_by_xpath('/html/body/form/div/fieldset/p[1]/input').send_keys('xpath定位')# xpath相对定位driver.find_element_by_xpath('//*[@id="userA"]').send_keys('admin')# 8.通过css选择器定位 ID为# classname为.driver.find_element_by_css_selector('#userA').send_keys('admin')driver.find_element_by_css_selector('.telA').send_keys('123456')# 等待3秒sleep(3)# 第二种用法 需要导入BY模块driver.find_element(By.CSS_SELECTOR,'#userA').send_keys('abc')# 关闭浏览器driver.quit()

等待时间

# 导selenium包from selenium import webdriverfrom time import sleep#调用显式等待所需from selenium.webdriver.support.wait import WebDriverWaitfrom selenium.webdriver.support import expected_conditions as ECfrom mon.by import By# 实例化浏览器对象driver = webdriver.Chrome()# 定义urlurl = r'D:\测试相关\py\自动化05期-007-Selenium常用定位方法\html\注册A.html'# 打开urldriver.get(url)# 1.强制等待3秒sleep(3)# 2.调用显式等待 10秒内未找到ID为'userA'的元素抛出异常ele=WebDriverWait(driver,10).until(EC.presence_of_element_located((By.ID,'userA')))ele.send_keys('admin')# 3.调用隐式等待driver.implicitly_wait(10)driver.find_element_by_id('userA1').send_keys('admin')# 关闭浏览器driver.quit()

弹窗

# 导selenium包from selenium import webdriverfrom time import sleep# 实例化浏览器对象driver=webdriver.Chrome()# 定义urlurl = r'D:\测试相关\py\自动化05期-007-Selenium常用定位方法\html\注册A.html'# 打开urldriver.get(url)driver.find_element_by_id('alerta').click()# 转移到弹窗btn=driver.switch_to_alert()sleep(3)# 获取按钮上的文本print(btn.text)# 调用方法-确定btn.accept()driver.find_element_by_id('userA').send_keys('admin')# 等待3秒sleep(3)# 关闭浏览器driver.quit()

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。