feat(e2e-tests): 添加端到端测试框架及测试用例

refactor(components): 调整头部和页脚布局样式
style(hero-section): 更新徽章动画效果

docs: 添加测试框架README文档
test: 实现首页、导航和联系表单的测试用例
ci: 添加CI测试脚本和配置
This commit is contained in:
张翔
2026-02-02 19:36:33 +08:00
parent 150024b6ac
commit f14002559e
30 changed files with 6377 additions and 17 deletions
+107
View File
@@ -0,0 +1,107 @@
# 测试环境配置文件
# 复制此文件为 .env 并根据实际情况修改配置
# ===========================================
# 基础配置
# ===========================================
# 测试环境URL
TEST_BASE_URL=http://localhost:3000
# 备用测试URL(如果本地不可用)
TEST_BASE_URL_FALLBACK=https://novalon-website.example.com
# 测试环境
TEST_ENV=development
# ===========================================
# 浏览器配置
# ===========================================
# 默认浏览器
DEFAULT_BROWSER=chromium
# 视口配置
DEFAULT_VIEWPORT_WIDTH=1920
DEFAULT_VIEWPORT_HEIGHT=1080
# 是否以无头模式运行
HEADLESS_MODE=false
# ===========================================
# 测试执行配置
# ===========================================
# 最大重试次数
MAX_RETRIES=2
# 测试超时时间(秒)
TEST_TIMEOUT=60
# 页面加载超时
PAGE_LOAD_TIMEOUT=30000
# 元素等待超时
ELEMENT_TIMEOUT=10000
# 并行执行配置
PARALLEL_WORKERS=4
# ===========================================
# 截图和视频配置
# ===========================================
# 是否在测试失败时截图
SCREENSHOT_ON_FAILURE=true
# 是否录制视频
VIDEO_RECORDING=false
# 截图保存路径
SCREENSHOTS_DIR=reports/screenshots
# 视频保存路径
VIDEOS_DIR=reports/videos
# ===========================================
# 日志配置
# ===========================================
# 日志级别
LOG_LEVEL=INFO
# 日志文件路径
LOG_FILE=reports/e2e_tests.log
# 是否在控制台输出日志
CONSOLE_LOG=true
# ===========================================
# 报告配置
# ===========================================
# HTML报告标题
REPORT_TITLE=Novalon Website E2E测试报告
# 报告描述
REPORT_DESCRIPTION=Novalon Website端到端自动化测试报告
# 是否生成JUnit XML报告(用于CI/CD
JUNIT_XML_REPORT=false
JUNIT_XML_PATH=reports/test-results.xml
# ===========================================
# CI/CD配置
# ===========================================
# CI环境标识
CI=false
# Git分支(CI环境中自动填充)
GIT_BRANCH=
# Git提交(CI环境中自动填充)
GIT_COMMIT=
# Git仓库(CI环境中自动填充)
GIT_REPOSITORY=