PCM_Report/test_ui_refresh.py

97 lines
2.9 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

#!/usr/bin/env python3
"""
测试界面刷新功能
"""
import sqlite3
import os
def create_new_test_order():
"""创建一个新的测试工单"""
print("🆕 创建新的测试工单")
try:
# 连接数据库
db_path = "experiments.db"
if not os.path.exists(db_path):
print("❌ 数据库文件不存在")
return None
conn = sqlite3.connect(db_path)
cursor = conn.cursor()
# 创建新的实验记录
work_order_no = "TEST5678"
cursor.execute("""
INSERT INTO experiments (work_order_no, start_ts, end_ts, created_at)
VALUES (?, NULL, NULL, datetime('now'))
""", (work_order_no,))
exp_id = cursor.lastrowid
conn.commit()
conn.close()
print(f"✅ 创建了新的测试工单: {work_order_no} (ID: {exp_id})")
return exp_id, work_order_no
except Exception as e:
print(f"❌ 创建工单失败: {e}")
return None
def check_experiment_status(exp_id):
"""检查实验状态"""
try:
conn = sqlite3.connect("experiments.db")
cursor = conn.cursor()
cursor.execute("""
SELECT id, work_order_no, start_ts, end_ts, created_at
FROM experiments
WHERE id = ?
""", (exp_id,))
record = cursor.fetchone()
conn.close()
if record:
exp_id, work_order, start_ts, end_ts, created_at = record
print(f"📊 实验 {exp_id} 状态:")
print(f" 工单号: {work_order}")
print(f" 开始时间: {start_ts or '未设置'}")
print(f" 结束时间: {end_ts or '未设置'}")
print(f" 创建时间: {created_at}")
return record
else:
print(f"❌ 未找到实验 {exp_id}")
return None
except Exception as e:
print(f"❌ 检查状态失败: {e}")
return None
def main():
print("界面刷新功能测试")
print("=" * 30)
# 检查当前工单1234的状态
print("🔍 检查当前工单1234的状态:")
check_experiment_status(143)
print("\n💡 测试建议:")
print("1. 现在重新启动程序: python main.py")
print("2. 你应该能看到工单1234已经有开始和结束时间了")
print("3. 如果要测试新的监控功能:")
print(" a. 在程序中修改工单号为新的值如TEST5678")
print(" b. 点击'开始工单'")
print(" c. 执行状态变化测试")
print(" d. 观察界面是否实时刷新")
# 可选:创建新的测试工单
print("\n🆕 是否需要创建新的测试工单?")
print("如果需要,可以取消注释下面的代码:")
print("# result = create_new_test_order()")
if __name__ == "__main__":
main()