Diretório de trabalho em testes Go
No Go, é comum colocar arquivos de configuração no diretório de trabalho e referenciá-los no código. No entanto, os testes de unidade podem não conseguir encontrar esses arquivos se o ambiente de teste não corresponder ao ambiente de produção.
Para especificar um diretório de trabalho para seus testes Go, explore a seguinte solução:
Considere usando a função Caller do pacote de tempo de execução. O chamador pega o arquivo de origem do teste atual e retorna seu caminho. Este caminho pode ser usado para definir o diretório de trabalho para o teste:
package sample
import (
"testing"
"runtime"
"os"
)
func TestGetDirectory(t *testing.T) {
_, filename, _, _ := runtime.Caller(0)
dir := filepath.Dir(filename)
os.Chdir(dir)
// Run tests using configuration files in the modified working directory
}
Ao usar Caller, você pode obter o caminho para o arquivo de origem de teste atual e definir o diretório de trabalho adequadamente. Isso permite que seus testes localizem arquivos de configuração no mesmo diretório do código de teste, o que deve resolver os erros de arquivo não encontrado.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3