API操作





    
    alert-1




from selenium import webdriver
import time as t

# alert用于弹出框处理,对alert警告框,Confirm确认框,prompt消息对话框
# text()获取alert文本,dismiss()点击取消,accept()接受,send_keys()输入

# alert警告操作
driver=webdriver.Chrome()
driver.maximize_window()
driver.get("file:///D:/PythonProject/app/UI%E8%87%AA%E5%8A%A8%E5%8C%96%E6%B5%8B%E8%AF%95/alert-1.html")
print("获取aler文本信息:",driver.switch_to.alert.text)
t.sleep(3)
# 点击确认按钮
driver.switch_to.alert.accept()
t.sleep(3)
driver.quit()



    


  

# 弹出确认框
driver = webdriver.Chrome()
driver.maximize_window()
driver.get(
    "file:///D:/PythonProject/app/UI%E8%87%AA%E5%8A%A8%E5%8C%96%E6%B5%8B%E8%AF%95/%E5%BC%B9%E5%87%BA%E7%A1%AE%E8%AE%A4%E6%A1%86.html")
# 点击按钮
driver.find_element_by_xpath('/html/body/input').click()
# 点击确认按钮
driver.switch_to.alert.accept()
t.sleep(3)
# 刷新页面
driver.refresh()
t.sleep(3)
driver.find_element_by_xpath('/html/body/input').click()
# 点击取消按钮
driver.switch_to.alert.dismiss()
t.sleep(3)
driver.quit()


    


  
# 弹出框输入内容
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("file:///D:/PythonProject/app/UI%E8%87%AA%E5%8A%A8%E5%8C%96%E6%B5%8B%E8%AF%95/prompt.html")
driver.find_element_by_xpath('/html/body/input').click()
# 弹出框输入内容
driver.switch_to.alert.send_keys("星德川")
t.sleep(5)
# 点击取消
driver.switch_to.alert.dismiss()
t.sleep(3)
driver.find_element_by_xpath('/html/body/input').click()
driver.switch_to.alert.send_keys("星德川")
t.sleep(5)
# 点击确定
driver.switch_to.alert.accept()
t.sleep(3)
driver.quit()

# 登录新浪邮箱
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://mail.sina.com.cn/")
# 账户密码
driver.find_element_by_xpath('//*[@id="freename"]').send_keys("邮箱账号")
driver.find_element_by_xpath('//*[@id="freepassword"]').send_keys("邮箱密码")
# 点击登录
driver.find_element_by_class_name('loginBtn').click()
t.sleep(3)
# 获取用户名,判断登录成功
nick = driver.find_element_by_xpath('//*[@id="greeting"]/span').text
print('nick信息:', nick)
assert nick == '用户名'
t.sleep(3)
# 点击写信按钮
driver.find_element_by_xpath('//*[@id="coreBtn"]/ul/li[1]/a').click()
t.sleep(3)
# 输入收件人
inputTest = driver.find_element_by_xpath('//*[@id="tr_to"]/td/ul/li/input')
inputTest.send_keys('收件人邮箱')
assert inputTest.get_attribute('value') == '收件人邮箱'
# 进入iframe
driver.switch_to.frame(0)
driver.quit()

# qq邮箱
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://mail.qq.com/")
# 进入iframe
driver.switch_to.frame('login_frame')
# 账户密码
driver.find_element_by_name('u').send_keys("用户名")
driver.find_element_by_name('p').send_keys("密码")
t.sleep(3)
# 点击登录
driver.find_element_by_class_name('btn').click()
driver.quit()
"""
sina邮箱测试梳理验证
1、错误信息提示
2、超链接验证
"""

driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://mail.sina.com.cn/")
# 验证用户名密码为空的错误信息
driver.find_element_by_class_name('loginBtn').click()
# 验证错误提示信息
errnoText = driver.find_element_by_xpath('/html/body/div[3]/div/div[2]/div/div/div[4]/div[1]/div[1]/div[1]/span[1]')
assert errnoText.text == '请输入邮箱名'
t.sleep(3)
driver.quit()

driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://mail.sina.com.cn/")
# 账号密码错误
driver.find_element_by_xpath('//*[@id="freename"]').send_keys("用户名")
driver.find_element_by_xpath('//*[@id="freepassword"]').send_keys("密码")
driver.find_element_by_class_name('loginBtn').click()
errnoText1 = driver.find_element_by_xpath('/html/body/div[3]/div/div[2]/div/div/div[4]/div[1]/div[1]/div[1]/span[1]')
assert errnoText1.text == '邮箱名不支持中文'
t.sleep(3)
driver.quit()

driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://mail.sina.com.cn/")
# 用户名格式不正确
driver.find_element_by_xpath('//*[@id="freename"]').send_keys("asdfghjkl")
driver.find_element_by_xpath('//*[@id="freepassword"]').send_keys('密码')
driver.find_element_by_class_name('loginBtn').click()
errnoText2 = driver.find_element_by_xpath('/html/body/div[3]/div/div[2]/div/div/div[4]/div[1]/div[1]/div[1]/span[1]')
assert errnoText2.text == '您输入的邮箱名格式不正确'
t.sleep(3)
driver.quit()

driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://mail.sina.com.cn/")
# 密码不正确
driver.find_element_by_xpath('//*[@id="freename"]').send_keys("asdfghjkl@sina.com")
driver.find_element_by_xpath('//*[@id="freepassword"]').send_keys('密码')
driver.find_element_by_class_name('loginBtn').click()
t.sleep(3)
errnoText3 = driver.find_element_by_xpath('/html/body/div[3]/div/div[2]/div/div/div[4]/div[1]/div[1]/div[1]/span[1]')
assert errnoText3.text == '登录名或密码错误'
t.sleep(3)
driver.quit()
# 测试忘记密码
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://mail.sina.com.cn/")
nowHandler = driver.current_window_handle
# 点击忘记密码
driver.find_element_by_link_text("忘记密码?").click()
allHandler = driver.window_handles
for handler in allHandler:
    if handler != nowHandler:
        driver.switch_to.window(handler)
        url = driver.current_url
        t.sleep(3)
        assert url.endswith('entry=freemail') == True
        driver.close()
driver.switch_to.window(nowHandler)
t.sleep(3)
driver.quit()

# 点击注册
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://mail.sina.com.cn/")
nowHandler = driver.current_window_handle
driver.find_element_by_xpath('/html/body/div[3]/div/div[2]/div/div/div[4]/div[1]/div[1]/div[7]/div[1]/a[2]').click()
allHandler = driver.window_handles
for handler in allHandler:
    if handler != nowHandler:
        driver.switch_to.window(handler)
        url1 = driver.current_url
        t.sleep(3)
        assert url1.endswith('regmail.php') == True
        driver.close()
driver.switch_to.window(nowHandler)
t.sleep(3)
driver.quit()