forked from mrlan/EnglishPal
Fix Text Files
parent
e8fbccdcf7
commit
426d131f64
|
@ -15,6 +15,10 @@
|
||||||
alert('输入不能为空!');
|
alert('输入不能为空!');
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
if (password.includes(' ')) {
|
||||||
|
alert('输入不能包含空格!');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
$.post(
|
$.post(
|
||||||
"/login", {'username': username, 'password': password},
|
"/login", {'username': username, 'password': password},
|
||||||
function (response) {
|
function (response) {
|
||||||
|
|
|
@ -20,6 +20,10 @@
|
||||||
alert('密码过于简单。(密码长度至少4位)');
|
alert('密码过于简单。(密码长度至少4位)');
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
if (old_password.includes(' ') || new_password.includes(' ')) {
|
||||||
|
alert('输入不能包含空格!');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
$.post("/reset", {'old-password': old_password, 'new-password': new_password},
|
$.post("/reset", {'old-password': old_password, 'new-password': new_password},
|
||||||
function (response) {
|
function (response) {
|
||||||
if (response.status === '1') {
|
if (response.status === '1') {
|
||||||
|
|
|
@ -24,6 +24,10 @@ You're logged in already! <a href="/logout">Logout</a>.
|
||||||
alert('密码过于简单。(密码长度至少4位)');
|
alert('密码过于简单。(密码长度至少4位)');
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
if (password.includes(' ') || password2.includes(' ')) {
|
||||||
|
alert('输入不能包含空格!');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
$.post("/signup", {'username': username, 'password': password},
|
$.post("/signup", {'username': username, 'password': password},
|
||||||
function (response) {
|
function (response) {
|
||||||
if (response.status === '0') {
|
if (response.status === '0') {
|
||||||
|
|
|
@ -0,0 +1,107 @@
|
||||||
|
import pytest
|
||||||
|
from selenium import webdriver
|
||||||
|
from selenium.webdriver.common.by import By
|
||||||
|
from selenium.webdriver.common.keys import Keys
|
||||||
|
from selenium.webdriver.support.ui import WebDriverWait
|
||||||
|
from selenium.webdriver.support import expected_conditions as EC
|
||||||
|
from selenium.common.exceptions import NoSuchElementException, TimeoutException
|
||||||
|
|
||||||
|
# 使用 Pytest 的 fixture 初始化 WebDriver 和 URL
|
||||||
|
@pytest.fixture(scope="module")
|
||||||
|
def driver():
|
||||||
|
# 初始化WebDriver
|
||||||
|
driver = webdriver.Edge(executable_path=r'D:\codeapp\python-3.8.5\Lib\site-packages\selenium\webdriver\edge\MicrosoftWebDriver.exe')
|
||||||
|
driver.implicitly_wait(10)
|
||||||
|
yield driver # yield 语句之后的代码在测试用例执行完毕后运行
|
||||||
|
driver.quit() # 测试用例执行完毕后关闭 WebDriver
|
||||||
|
|
||||||
|
@pytest.fixture(scope="module")
|
||||||
|
def URL():
|
||||||
|
return 'http://127.0.0.1:5000'
|
||||||
|
|
||||||
|
# 测试登录页面输入密码包含空格的情况
|
||||||
|
def test_login_password_with_space(driver, URL):
|
||||||
|
try:
|
||||||
|
driver.get(URL+"/login")
|
||||||
|
|
||||||
|
# 输入用户名
|
||||||
|
username_elem = driver.find_element_by_id('username')
|
||||||
|
username_elem.send_keys("test_user")
|
||||||
|
|
||||||
|
# 输入包含空格的密码
|
||||||
|
password_elem = driver.find_element_by_id('password')
|
||||||
|
password_elem.send_keys("password with space")
|
||||||
|
|
||||||
|
# 提交登录表单
|
||||||
|
elem = driver.find_element_by_class_name('btn') # 找到提交按钮
|
||||||
|
elem.click()
|
||||||
|
|
||||||
|
# 显式等待直到警告框出现
|
||||||
|
WebDriverWait(driver, 10).until(EC.alert_is_present())
|
||||||
|
|
||||||
|
# 检查是否弹出警告框
|
||||||
|
alert = driver.switch_to.alert
|
||||||
|
assert "输入不能包含空格!" in alert.text
|
||||||
|
except (NoSuchElementException, TimeoutException) as e:
|
||||||
|
pytest.fail("页面元素未找到或超时: {}".format(e))
|
||||||
|
|
||||||
|
|
||||||
|
# 测试注册页面输入密码包含空格的情况
|
||||||
|
|
||||||
|
def test_signup_password_with_space(driver, URL):
|
||||||
|
try:
|
||||||
|
driver.get(URL+"/signup")
|
||||||
|
|
||||||
|
# 输入用户名
|
||||||
|
username_elem = driver.find_element_by_id('username')
|
||||||
|
username_elem.send_keys("new_user")
|
||||||
|
|
||||||
|
# 输入包含空格的密码
|
||||||
|
password_elem = driver.find_element_by_id('password')
|
||||||
|
password_elem.send_keys("password with space")
|
||||||
|
|
||||||
|
# 再次输入密码
|
||||||
|
password2_elem = driver.find_element_by_id('password2')
|
||||||
|
password2_elem.send_keys("password with space")
|
||||||
|
|
||||||
|
# 提交注册表单
|
||||||
|
elem = driver.find_element_by_class_name('btn') # 找到提交按钮
|
||||||
|
elem.click()
|
||||||
|
|
||||||
|
# 显式等待直到警告框出现
|
||||||
|
WebDriverWait(driver, 10).until(EC.alert_is_present())
|
||||||
|
|
||||||
|
# 检查是否弹出警告框
|
||||||
|
alert = driver.switch_to.alert
|
||||||
|
assert "输入不能包含空格!" in alert.text
|
||||||
|
except (NoSuchElementException, TimeoutException) as e:
|
||||||
|
pytest.fail("页面元素未找到或超时: {}".format(e))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 测试重设密码页面输入新密码包含空格的情况
|
||||||
|
|
||||||
|
def test_reset_password_with_space(driver, URL):
|
||||||
|
try:
|
||||||
|
driver.get(URL+"/reset")
|
||||||
|
|
||||||
|
# 输入用户名
|
||||||
|
username_elem = driver.find_element_by_id('username')
|
||||||
|
username_elem.send_keys("test_user")
|
||||||
|
|
||||||
|
# 输入包含空格的密码
|
||||||
|
password_elem = driver.find_element_by_id('password')
|
||||||
|
password_elem.send_keys("password with space")
|
||||||
|
|
||||||
|
# 提交重设密码表单
|
||||||
|
elem = driver.find_element_by_class_name('btn') # 找到提交按钮
|
||||||
|
elem.click()
|
||||||
|
|
||||||
|
# 显式等待直到警告框出现
|
||||||
|
WebDriverWait(driver, 10).until(EC.alert_is_present())
|
||||||
|
|
||||||
|
# 检查是否弹出警告框
|
||||||
|
alert = driver.switch_to.alert
|
||||||
|
assert "输入不能包含空格!" in alert.text
|
||||||
|
except (NoSuchElementException, TimeoutException) as e:
|
||||||
|
pytest.fail("页面元素未找到或超时: {}".format(e))
|
Loading…
Reference in New Issue