Uau, demorei muito tempo para encontrar isso:
Não há argumento de linha de comando que faça isso. Mas a variável de ambiente pode.
Aqui está o código do cromo relevante:
#if !defined(OS_MACOSX)
bool GetTempDir(FilePath* path) {
const char* tmp = getenv("TMPDIR");
if (tmp)
*path = FilePath(tmp);
else
#if defined(OS_ANDROID)
return PathService::Get(base::DIR_CACHE, path);
#else
*path = FilePath("/tmp");
#endif
return true;
}
Assim, para o Linux, você pode simplesmente definir uma variável de ambiente TMPDIR na sessão do Google Chrome para fazer isso.
Então, em selênio, você precisa fazer isso:
ChromeDriverService chromeDriverService = new ChromeDriverService.Builder()
.usingDriverExecutable(new File("driver_linux/chromedriver"))
.usingAnyFreePort()
.withEnvironment(ImmutableMap.of("TMPDIR", "/some/other/tmp/dir")).build();