Code review comment: these should be removed, or generalized to `portRangeStart <= server1.getServerAddress().getPort() <= portRangeEnd`.

Code under review:
public void testPortRangeSuccess() throws Throwable {

		
		AtomicKvStateRequestStats serverStats = new AtomicKvStateRequestStats();
		AtomicKvStateRequestStats clientStats = new AtomicKvStateRequestStats();

		List<Integer> portList = new ArrayList<>();
		portList.add(7777);
		portList.add(7778);
		portList.add(7779);

		try (
				TestServer server1 = new TestServer("Test Server 1", serverStats, portList.iterator());
				TestServer server2 = new TestServer("Test Server 2", serverStats, portList.iterator());
				TestClient client = new TestClient(
						"Test Client",
						1,
						new MessageSerializer<>(new TestMessage.TestMessageDeserializer(), new TestMessage.TestMessageDeserializer()),
						clientStats
				)
		) {
			server1.start();
			Assert.assertEquals(7777L, server1.getServerAddress().getPort());

			server2.start();
			Assert.assertEquals(7778L, server2.getServerAddress().getPort());

			TestMessage response1 = client.sendRequest(server1.getServerAddress(), new TestMessage("ping")).join();
			Assert.assertEquals(server1.getServerName() + "-ping", response1.getMessage());

			TestMessage response2 = client.sendRequest(server2.getServerAddress(), new TestMessage("pong")).join();
			Assert.assertEquals(server2.getServerName() + "-pong", response2.getMessage());

			
			Assert.assertEquals(2L, serverStats.getNumConnections());

			Assert.assertEquals(2L, clientStats.getNumConnections());
			Assert.assertEquals(0L, clientStats.getNumFailed());
			Assert.assertEquals(2L, clientStats.getNumSuccessful());
			Assert.assertEquals(2L, clientStats.getNumRequests());
		}

		Assert.assertEquals(0L, clientStats.getNumConnections());
		Assert.assertEquals(0L, clientStats.getNumFailed());
		Assert.assertEquals(2L, clientStats.getNumSuccessful());
		Assert.assertEquals(2L, clientStats.getNumRequests());
	}

Line commented on: Assert.assertEquals(7777L, server1.getServerAddress().getPort());

Revised code:
public void testPortRangeSuccess() throws Throwable {

		
		AtomicKvStateRequestStats serverStats = new AtomicKvStateRequestStats();
		AtomicKvStateRequestStats clientStats = new AtomicKvStateRequestStats();

		List<Integer> portList = new ArrayList<>();
		portList.add(7777);
		portList.add(7778);
		portList.add(7779);

		try (
				TestServer server1 = new TestServer("Test Server 1", serverStats, portList.iterator());
				TestServer server2 = new TestServer("Test Server 2", serverStats, portList.iterator());
				TestClient client = new TestClient(
						"Test Client",
						1,
						new MessageSerializer<>(new TestMessage.TestMessageDeserializer(), new TestMessage.TestMessageDeserializer()),
						clientStats
				)
		) {
			server1.start();
			Assert.assertTrue(server1.getServerAddress().getPort() >= 7777 && server1.getServerAddress().getPort() <= 7779);

			server2.start();
			Assert.assertTrue(server2.getServerAddress().getPort() >= 7777 && server2.getServerAddress().getPort() <= 7779);

			TestMessage response1 = client.sendRequest(server1.getServerAddress(), new TestMessage("ping")).join();
			Assert.assertEquals(server1.getServerName() + "-ping", response1.getMessage());

			TestMessage response2 = client.sendRequest(server2.getServerAddress(), new TestMessage("pong")).join();
			Assert.assertEquals(server2.getServerName() + "-pong", response2.getMessage());

			
			Assert.assertEquals(2L, serverStats.getNumConnections());

			Assert.assertEquals(2L, clientStats.getNumConnections());
			Assert.assertEquals(0L, clientStats.getNumFailed());
			Assert.assertEquals(2L, clientStats.getNumSuccessful());
			Assert.assertEquals(2L, clientStats.getNumRequests());
		}

		Assert.assertEquals(0L, clientStats.getNumConnections());
		Assert.assertEquals(0L, clientStats.getNumFailed());
		Assert.assertEquals(2L, clientStats.getNumSuccessful());
		Assert.assertEquals(2L, clientStats.getNumRequests());
	}