功能类
class Longing():
def __init__(self,drivers,times):
self.driver = drivers
self.time = times
# 让参数有初始值,变成非必传参数user="user1203",pwd="duanyu1203.."
def login(self,user="user1203",pwd="duanyu1203.."):
self.driver.find_element_by_xpath(".//*[@id='id_username']").send_keys(user)
self.time.sleep(2)
self.driver.find_element_by_xpath(".//*[@id='id_password']").send_keys(pwd)
self.time.sleep(2)
self.driver.find_element_by_xpath(".//*[@type='submit']").click()
def get_long_username(self):
# 抛异常代码块,当代码顺利执行时,返回执行结果,没有顺利执行返回false结果,不会引起代码报错还知道问题
try:
self.time.sleep(2)
# self.driver.find_element_by_xpath(".//*[text()='进主页更多功能']").click()
# 获取登录用户名
self.time.sleep(2)
t = self.driver.find_element_by_xpath("//strong").text
self.time.sleep(2)
return "登陆成功,用户名为:"+t
except:
return "登录失败"
测试用例调用
import unittest
from selenium import webdriver
import time
# 导入功能类
from hanshu.shengzhuanghuanshu import Longing
class LoginTest(unittest.TestCase):
@classmethod
def setUpClass(cls):
cls.driver = webdriver.Chrome()
time.sleep(1)
# 调用初始化功能类
cls.su = Longing(cls.driver,time)
def setUp(self):
self.driver.get("http://47.104.190.48:8000/xadmin/")
def test_01(self):
'''登录成功的案例'''
# 使用功能类方法
self.su.login()
ps = self.su.get_long_username()
print(ps)
self.assertFalse(ps == "登录失败")
def test_02(self):
'''登录失败的案例'''
self.su.login()
ps = self.su.get_long_username("ABC","BUH")
print(ps)
self.assertFalse(ps == "登录失败")
def tearDown(self):
self.driver.delete_all_cookies()
self.driver.close()
def tearDownClass(cls):
cls.driver.quit()
if __name__ == "__main__":
unittest.main