diff --git a/conf/configuration.go b/conf/configuration.go
index fd77529de..0faea17e6 100644
--- a/conf/configuration.go
+++ b/conf/configuration.go
@@ -34,8 +34,8 @@ type nd struct {
 
 var Server = &nd{}
 
-func NewWithPath(path string) *multiconfig.DefaultLoader {
-	loaders := []multiconfig.Loader{}
+func newWithPath(path string, skipFlags ...bool) *multiconfig.DefaultLoader {
+	var loaders []multiconfig.Loader
 
 	// Read default values defined via tag fields "default"
 	loaders = append(loaders, &multiconfig.TagLoader{})
@@ -55,9 +55,12 @@ func NewWithPath(path string) *multiconfig.DefaultLoader {
 	}
 
 	e := &multiconfig.EnvironmentLoader{}
-	f := &multiconfig.FlagLoader{}
+	loaders = append(loaders, e)
+	if len(skipFlags) == 0 || !skipFlags[0] {
+		f := &multiconfig.FlagLoader{}
+		loaders = append(loaders, f)
+	}
 
-	loaders = append(loaders, e, f)
 	loader := multiconfig.MultiLoader(loaders...)
 
 	d := &multiconfig.DefaultLoader{}
@@ -66,8 +69,8 @@ func NewWithPath(path string) *multiconfig.DefaultLoader {
 	return d
 }
 
-func LoadFromFile(confFile string) {
-	m := NewWithPath(confFile)
+func LoadFromFile(confFile string, skipFlags ...bool) {
+	m := newWithPath(confFile, skipFlags...)
 	err := m.Load(Server)
 	if err == flag.ErrHelp {
 		os.Exit(1)
diff --git a/tests/init_tests.go b/tests/init_tests.go
index 267bf574a..bb2474e35 100644
--- a/tests/init_tests.go
+++ b/tests/init_tests.go
@@ -23,7 +23,7 @@ func Init(t *testing.T, skipOnShort bool) {
 		confPath, _ := filepath.Abs(filepath.Join(appPath, "tests", "navidrome-test.toml"))
 
 		os.Chdir(appPath)
-		conf.LoadFromFile(confPath)
+		conf.LoadFromFile(confPath, true)
 
 		noLog := os.Getenv("NOLOG")
 		if noLog != "" {