我有一个测试给定端口是否可用的函数:
public static boolean isPortAvailable(int port) throws IOException {
boolean isAvailable = false;
ServerSocket serverSocket = null;
if (isValidPort(port)) {
try {
serverSocket = new ServerSocket(port);
isAvailable = true;
} catch (IOException ignore) {
isAvailable = false;
} finally {
if (serverSocket != null) {
serverSocket.close();
}
serverSocket = null;
}
}
return isAvailable;
}
我需要使用 junit 测试此方法的错误条件:
@Test
public void testPortUnAvailable() throws IOException{
int port = 49613 ;
Assert.assertFalse(PortUtil.isPortAvailable(port));
}
我应该如何强制端口号 49613 或任何其他端口不可用于测试?任何其他关于更好方法的建议都是最受欢迎的。