from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import unittest
class mms_Demo(unittest.TestCase):
'''测试mms医药管理系统的登录功能'''
def setUp(self) -> None:
self.driver = webdriver.Chrome(r'D:\Program Files (x86)\Chromedriver\chromedriver_win32\chromedriver.exe')
self.url = 'http://localhost:8080/mms/login.html'
# 由于mms登陆的提示信息是js加载的 原始的页面上没有 所以使用隐式等待也行
self.driver.implicitly_wait(5)
def tearDown(self) -> None:
self.driver.quit()
# todo:测试输入正确的用户名 密码能否成功登陆 并显示正确的登录用户
def test_login_success(self):
self.driver.get(self.url)
self.driver.find_element('id', 'username').send_keys('test')
self.driver.find_element('id', 'password').send_keys('1201')
self.driver.find_element('xpath', '//input[@value="Login"]').click()
login_name = self.driver.find_element('id', 'loginName').text
self.assertEqual('test', login_name)
# todo:测试输入错误的用户名 正确的密码能否登录失败 并正确显示提示信息
def test_login_username_fail(self):
self.driver.get(self.url)
self.driver.find_element('id', 'username').send_keys('error')
self.driver.find_element('id', 'password').send_keys('1201')
self.driver.find_element('xpath', '//input[@value="Login"]').click()
sign_text = self.driver.find_element('xpath', '//div[contains(text(), "没有此")]').text
self.assertEqual(sign_text, '没有此用户')
# todo:测试输入正确的用户名 错误的密码能否登录失败 并正确显示提示信息
def test_login_password_fail(self):
self.driver.get(self.url)
self.driver.find_element('id', 'username').send_keys('test')
self.driver.find_element('id', 'password').send_keys('1234')
self.driver.find_element('xpath', '//input[@value="Login"]').click()
sign_text = self.driver.find_element('xpath', '//div[contains(text(), "密码错误")]').text
self.assertEqual(sign_text, '密码错误')
# todo:测试用户名为空 错误的密码能否登录失败 并正确显示提示信息
def test_login_null_username_fail(self):
self.driver.get(self.url)
self.driver.find_element('id', 'password').send_keys('1234')
self.driver.find_element('xpath', '//input[@value="Login"]').click()
sign_text = self.driver.find_element('xpath', '//div[contains(text(), "不能为空")]').text
self.assertEqual(sign_text, 'User Id不能为空')
def test_login_null_password_fail(self):
self.driver.get(self.url)
self.driver.find_element('id', 'username').send_keys('test')
self.driver.find_element('xpath', '//input[@value="Login"]').click()
sign_text = self.driver.find_element('xpath', '//div[contains(text(), "不能为空")]').text
self.assertEqual(sign_text, 'password不能为空')
运行结果
?
|