當我在詞法分析器的測試單元中遇到這一行時,我目前正在閱讀Writing an Interpreter in Go :package lexer import ( "testing""monkey/token")func TestNextToken(t *testing.T) {}“t *testing.T”的目的是什么?我知道它是指向測試庫中某個字段的指針,但我不確定它在做什么。稍后在代碼中以這種方式使用:for i, tt := range tests { tok := l.NextToken() if tok.Type != tt.expectedType { t.Fatalf("tests[%d] - tokentype wrong. expected=%q, got=%q", i, tt.expectedType, tok.Type) } if tok.Literal != tt.expectedLiteral { t.Fatalf("tests[%d] - literal wrong. expected=%q, got=%q", i, tt.expectedLiteral, tok.Literal) }}我通讀了Golang 測試文檔,但無法真正理解它的目的是什么或為什么將其傳遞給測試功能。它只提到它是“傳遞給測試函數以管理測試狀態和支持格式化測試日志的類型”,盡管我不確定如何在上述代碼的上下文中解釋它。
- 1 回答
- 0 關注
- 303 瀏覽
添加回答
舉報
0/150
提交
取消