#!/usr/bin/env python3 """ 测试自动刷新功能 """ import time import subprocess import sys def test_auto_refresh(): """测试自动刷新功能""" print("🧪 测试自动刷新功能") print("=" * 40) print("📋 测试步骤:") print("1. 确保程序正在运行") print("2. 确保有工单在等待状态") print("3. 自动执行状态变化序列") print("4. 观察界面是否自动刷新") print("\n🚀 开始测试...") try: # 1. 写入状态1(实验开始) print("\n📝 步骤1: 写入状态1(实验开始)") result = subprocess.run( ['python', 'quick_test_data.py'], input='3\n', text=True, capture_output=True, cwd='.' ) if result.returncode == 0: print("✅ 状态1写入成功") print("💡 请观察程序界面,应该显示实验开始时间") else: print(f"❌ 状态1写入失败: {result.stderr}") return # 等待10秒让用户观察 print("\n⏳ 等待10秒,请观察界面变化...") for i in range(10, 0, -1): print(f" 倒计时: {i}秒", end='\r') time.sleep(1) print() # 2. 写入状态0(实验结束) print("\n📝 步骤2: 写入状态0(实验结束)") result = subprocess.run( ['python', 'quick_test_data.py'], input='2\n', text=True, capture_output=True, cwd='.' ) if result.returncode == 0: print("✅ 状态0写入成功") print("💡 请观察程序界面,应该显示实验结束时间") else: print(f"❌ 状态0写入失败: {result.stderr}") return print("\n🎉 测试完成!") print("📊 如果看到以下现象,说明自动刷新功能正常:") print(" ✅ 写入状态1后,界面自动显示开始时间") print(" ✅ 写入状态0后,界面自动显示结束时间") print(" ✅ 状态栏显示状态变化消息") print(" ✅ 不需要手动点击刷新按钮") except Exception as e: print(f"❌ 测试失败: {e}") def main(): print("自动刷新功能测试工具") print("=" * 30) print("⚠️ 注意事项:") print("1. 请确保程序 python main.py 正在运行") print("2. 请确保有工单在等待状态(橙色按钮)") print("3. 测试过程中请观察程序界面的变化") input("\n按回车键开始测试...") test_auto_refresh() if __name__ == "__main__": main()