- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我尝试过的:
@Test
public void local_host_test() {
InetAddress inetAddress = Mockito.mock(InetAddress.class);
Mockito.when(inetAddress.getHostAddress()).thenReturn("127.0.0.1");
InetSocketAddress inetSocketAddress = Mockito.mock(InetSocketAddress.class);
Mockito.when(inetSocketAddress.getAddress()).thenReturn(inetAddress);
Mockito.when(inetSocketAddress.getPort()).thenReturn(22);
Assert.assertThat(inetSocketAddress.getAddress().getHostAddress(), Is.is("127.0.0.1"));
}
我还 mock 了中间步骤,即 InetAddress
,但它提示如下:
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.mockito.internal.creation.cglib.ClassImposterizer (file:mockito-all-1.10.19.jar) to constructor java.net.InetAddress()
WARNING: Please consider reporting this to the maintainers of org.mockito.internal.creation.cglib.ClassImposterizer
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
java.lang.NullPointerException
at java.base/java.net.InetSocketAddress.getAddress(InetSocketAddress.java:325)
at InetSocketAddressTest.local_host_test(InetSocketAddressTest.java:17)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:33)
at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:230)
at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:58)
Process finished with exit code 255
我做错了什么?
最佳答案
查看 Java 文档
/**
* Gets the port number.
*
* @return the port number.
*/
public final int getPort() {
return holder.getPort();
}
/**
*
* Gets the {@code InetAddress}.
*
* @return the InetAdress or {@code null} if it is unresolved.
*/
public final InetAddress getAddress() {
return holder.getAddress();
}
和 Mockito 约束
Mockito 不支持模拟 final方法。 Mockito 和 PowerMock 之间的比较将详细解释事情。无法模拟 final方法 - 它们的真实行为执行时没有任何异常
因此,它正在调用实际的方法,并且您得到NPE
。
使用PowerMockito
关于java - 模拟 InetSocketAddress.getAddress().getHostAddress() 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60885294/
我写了一个小测试程序,它使用 Dns.GetHostAddresses 来解析主机名。如果我输入一个不存在的主机名,它会抛出一个 SocketException 并且消息将是 No such host
我一直试图找到使用 GetHostAddresses 或 GetHostEntry 的正确位置。我通过阅读这篇文章 (http://msdn.microsoft.com/en-us/library/m
我正在编写一个使用 C# 解析域 IP 地址的脚本 问题是我有很多域无法解析为 IP,因此代码 (Dns.GetHostAddresses) 运行了很长时间,试图解析域的 IP没有 IP。 这是代码:
InetAddress address= InetAddress.getLocalHost(); System.out.println(address.getHostName()+ "------"+
我正在尝试使用 WifiManager 和 WifiInfo 类获取我的手机 IP 地址。 它返回正确的 ip 地址反转。 public String getWifiIpAddress() {
我有一个用 Java 编写的遗留服务器应用程序,在过去的六年里,它在运行 Java 6 的 Windows 2003 机器上运行良好。 我们最近将应用程序迁移到运行最新版本 java 的全新 wind
这是我尝试过的: @Test public void local_host_test() { InetAddress inetAddress = Mockito.mock(InetAddres
我正在开发 uwp 应用程序。我编辑了主机文件并将 www.example.com 重定向到本地服务器 IP (192.168.1.187)。在浏览器中网站加载正确但在应用程序中 System.Net
Dns.GetHostAddresses 真的能取回所有注册的 IP 吗? 也就是说,DNS 可以针对一个 DNS 名称注册多个 IP,以用于循环类型目的(例如,多个代理服务器,但使用一个主要的 DN
我有两个设备 - Note 3 (N9005) 和 G Pad 8.3(也用 Nexus 4 而不是 note 3 进行了测试,结果相同)。 当我在 Note 3 是组所有者时创建 Wifi P2P
我尝试了 InetAddress.getLocalHost().getHostAddress() 来获取用户的互联网地址。它给了我 127.0.1.1 但我正在寻找更像 192.168.1.75 的东
我想加入要在消息框中显示的字符串,但不确定为什么会在这一行出现错误: IPAddress[] ips = Dns.GetHostAddresses(he.HostName); var addr = s
是InetAddress.getHostAddress() JDK 1.6 是否兼容 ipv6? 具体我在做什么 InetAddress.getLocalHost().getHostAddress()
我正在使用 Java 在一个类中构建一个简单的方法,该方法将获取用户计算机的 LAN IPv4 地址。对于大多数部分,这很好用,除了一个异常(exception)......我得到的 IP 地址是我的
我正在创建 TCP 套接字应用程序。在服务器端, ss = new ServerSocket(10000); Socket socket = ss.accept(); String remoteIp
我已经对此进行了相当多的搜索,但仍然没有任何运气。问题是,如果我从我的服务器进行 nslookup,如果主机有 IPv6 地址,我会在列表中看到它。但是,如果我使用 .Net System.Net 的
因此,我正在使用 Xamarin 和 .net 在 iOS 项目中实现 uPNP。我一直在努力为本地设备(即运行程序的设备)获取有效的本地 IP 地址。 我已尝试使用 NetworkInterface
用下面的代码 InetAddress.getLocalHost().getHostAddress(); 可以获取主机地址。但是 JVM 是如何发现它的呢? Java API 只告诉您它返回它 ( AP
我正在使用一个库,该库使用 java.net.InetAddress.getLocalHost().getHostAddress() 来获取我的本地 IP 地址。但是,这总是在我的计算机上返回一个 I
我正在开发一个 Android 应用程序,它可以返回连接到 WI-FI 网络的设备的 IP 地址。当我使用代码时 InetAddress.getLocalHost().getHostAddress()
我是一名优秀的程序员,十分优秀!