Fyne 系列 11:测试 Fyne 图形界面
GUI 程序也可以测试。Fyne 提供了 fyne.io/fyne/v2/test 包,可以模拟点击、输入,并检查控件状态。
测试按钮点击
假设有一个计数器界面:
1 | func NewCounterUI() (*widget.Label, *widget.Button) { |
测试:
1 | func TestCounterButton(t *testing.T) { |
测试输入框
1 | func TestEntryInput(t *testing.T) { |
拆分业务逻辑
最容易测试的 Fyne 项目,通常会把业务逻辑和界面逻辑拆开。按钮回调里只做参数读取、调用业务函数、更新界面。
1 | func BuildConfig(name string, debug bool) string { |
这种函数可以用普通 Go 测试覆盖,不依赖图形界面。
测试建议
界面测试不需要覆盖每个像素。重点测试按钮回调、输入校验、状态切换、列表刷新、错误处理。真正复杂的逻辑,尽量放到普通 Go 函数里测。
评论
评论插件加载失败
正在加载评论插件