tcl - 如何从测试本身获取 TCL 测试的名称

标签 tcl tk-toolkit

我想知道如何从测试本身找到在 tcl 中运行的测试的名称?我在 google 上找不到这个。

我正在调用另一个过程并传递调用它的测试的名称作为参数。所以我想知道哪个 tcl 命令可以为我做到这一点。

最佳答案

这不是一个鼓励使用的用例......但如果您直接在测试中使用它,则可以使用info frame 1来获取信息。

proc example {contextTest} {
    puts "Called from $contextTest"
    return ok
}

tcltest::test foo-1.1 {testing the foo} {
    example [lindex [dict get [info frame 1] cmd] 1]
} ok

这假设您使用的是 Tcl 8.5 或更高版本,但 Tcl 8.5 是当前支持的最旧的 Tcl 版本,因此这是一个合理的限制。

关于tcl - 如何从测试本身获取 TCL 测试的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52995647/

相关文章:

TCL:通过SHELL环境变量检查文件是否存在

linux - 期望+在期望脚本中更改目录

c++ - C++/Tk 与 Tk 8.5 兼容吗?

ruby - 更改 ruby​​ tk 中笔记本选项卡的字体大小

tcl - 如何分发用解释性语言构建的项目?

label - 如何使 Tk 标签中的文本可选择?

R tcl tk : How do I pass a variable to a button command?

python - 在python和tkinter中使用while循环持续更新传感器数据

testing - Tcl/Tk - 自动化 GUI 测试

unicode - 检查字形是否呈现 "correctly"