diff --git a/test/box/configuration.result b/test/box/configuration.result
index 62f81900b6c7b1a660b95851f91b5f5eb0b78301..eab2d38d46621fec237540938a84a937f8a790b4 100644
--- a/test/box/configuration.result
+++ b/test/box/configuration.result
@@ -249,3 +249,15 @@ readahead = 16320
 slab_alloc_arena = 0.1
 wal_dir_rescan_delay = 0.1
 ...
+lua string.gmatch(package.path, '([^;]*)')()
+---
+ - script_dir/?.lua
+...
+lua string.gmatch(package.cpath, '([^;]*)')()
+---
+ - script_dir/?.so
+...
+lua mod.test(10, 15)
+---
+ - 25
+...
diff --git a/test/box/configuration.test b/test/box/configuration.test
index 9ed8d7e7bef4fe772dd17870f52918684240490d..e97763f5939b8f29f69d64db797bb17136ee6538 100644
--- a/test/box/configuration.test
+++ b/test/box/configuration.test
@@ -75,6 +75,14 @@ server.stop()
 server.deploy("box/tarantool_scriptdir.cfg")
 exec admin "lua print_config()"
 
+# Test script_dir + require
+server.stop()
+shutil.copy("box/require_init.lua", os.path.join(script_dir_path, "init.lua"))
+shutil.copy("box/require_mod.lua", os.path.join(script_dir_path, "mod.lua"))
+server.deploy("box/tarantool_scriptdir.cfg")
+exec admin "lua string.gmatch(package.path, '([^;]*)')()"
+exec admin "lua string.gmatch(package.cpath, '([^;]*)')()"
+exec admin "lua mod.test(10, 15)"
 
 # restore default server
 server.stop()
diff --git a/test/box/require_init.lua b/test/box/require_init.lua
new file mode 100644
index 0000000000000000000000000000000000000000..51e05ffcb382ea824a019fbd36ff6766f3d5ae08
--- /dev/null
+++ b/test/box/require_init.lua
@@ -0,0 +1 @@
+mod = require("mod")
diff --git a/test/box/require_mod.lua b/test/box/require_mod.lua
new file mode 100644
index 0000000000000000000000000000000000000000..d708a86089817dd5db59909bb936e43dfbbf4edc
--- /dev/null
+++ b/test/box/require_mod.lua
@@ -0,0 +1,7 @@
+exports = {}
+
+function exports.test(a, b)
+  return a+b
+end
+
+return exports