-
form表单
新建一个form表单
<form action="javascript:alert('hello')"> username: <input type="text" name="username" id="username"><br> password: <input type="password" name="pwd" id="pwd"><br> <input type="submit" value="submit" id="submit"> </form>
def test_login(self): username = self.driver.find_element_by_id('username') password = self.driver.find_element_by_id('pwd') time.sleep(3) print(username.get_attribute('type')) self.driver.find_element_by_id('submit').click()
-
checkbox和radiobutton
新建一个form表单
swimming: <input type="checkbox" name="swimming" value="swimming"><br> reading: <input type="checkbox" name="reading" value="reading"><br> <hr> gender: <input type="radio" name="gender" value="male"> <input type="radio" name="gender" value="female"><br>
def check_box(self): swimming = self.driver.find_element_by_name('swimming') reading = self.driver.find_element_by_name('reading') if not swimming.is_selected(): swimming.click() if not reading.is_selected(): reading.click() time.sleep(2) #定位到gender的有两个元素,因此要用find_elements lst = self.driver.find_elements_by_name('gender') lst[0].click() time.sleep(2) lst[1].click()
-
下拉列表选框
新建form表单
<form action="javascript:alert('select')">
provide:
<select name="provise" id="provise">
<option value="bj">Beijing</option>
<option value="tj">Tianjin</option>
<option value="sh">Shanghai</option>
</select>
</form>
def select_box(self):
se = self.driver.find_element_by_id('provise')
select = Select(se)
select.select_by_value('tj')
time.sleep(2)
select.select_by_index(0)
time.sleep(2)
select.select_by_visible_text('Shanghai')
多选select选框
新建form表单
<form action="javascript:alert('select')">
provide:
<select name="provise" id="provise" multiple>
<option value="bj">Beijing</option>
<option value="tj">Tianjin</option>
<option value="sh">Shanghai</option>
</select>
</form>
def mul_select_box(self):
se = self.driver.find_element_by_id('provise')
select = Select(se)
for i in range(3):
select.select_by_index(i)
time.sleep(1)
time.sleep(2)
select.deselect_all()
alert提示框
三种弹框都用self.driver.switch_to.alert调出
新建html页面
<a href="javascript:alert('提示框')" id="alert">Alert</a><br>
<a href="javascript:confirm('真的删除数据吗?')" id="confirm">Confirm</a><br>
<a href="javascript:var age = prompt('请输入年龄');document.write(age)" id="prompt"> Prompt</a><br>
def alert_handle(self):
self.driver.find_element_by_id('alert').click() #调出alert
#切换到alert
alert = self.driver.switch_to.alert
print(confirm.text)
alert.accept()
time.sleep(3)
self.driver.quit()
def alert_handle(self):
self.driver.find_element_by_id('confirm').click() #调出alert
#切换到confirm
confirm = self.driver.switch_to.alert
print(confirm.text)
confirm.accept()
confirm.dismiss()
time.sleep(3)
self.driver.quit()
执行JS脚本
def js_test(self):
self.driver.execute_script("alert('hello')") #弹窗弹出一个alert
time.sleep(2)
self.driver.switch_to.alert.accept()
time.sleep(2)