gpt4 book ai didi

java - 在 selenium 中使用 String.ValueOf() 将 Float 转换为 String 显示异常 - java.lang.ClassCastException : java. lang.Float 无法转换为 [C

转载 作者:行者123 更新时间:2023-12-02 06:17:20 25 4
gpt4 key购买 nike

我一直在尝试使用 Selenium 运行一些与 REST API 相关的测试。根据下面的代码,我需要将浮点值转换为字符串。

当我使用 String.valueOf(float arg) 时,出现异常 - java.lang.ClassCastException: java.lang.Float 无法转换为 [C

代码:

@Test

public void Test01()
{
Response r=given().parameter("id", "someID").parameter("appid", "someID").when().get("someURL");

String lon=String.valueOf(r.then().contentType(ContentType.JSON).extract().path("coord.lon"));

System.out.println(lon);
}

预期:值转换必须成功。即,Float -> String

实际:失败:测试01

java.lang.ClassCastException: java.lang.Float cannot be cast to [C
at APITestingProject.com.org.api.TransferingAPIResponse_2.Test01(TransferingAPIResponse_2.java:19)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:86)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:643)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:820)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1128)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112)
at org.testng.TestRunner.privateRun(TestRunner.java:782)
at org.testng.TestRunner.run(TestRunner.java:632)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:366)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:361)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:319)
at org.testng.SuiteRunner.run(SuiteRunner.java:268)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1244)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1169)
at org.testng.TestNG.run(TestNG.java:1064)
at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:114)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)

最佳答案

更改这部分代码

String lon=String.valueOf(r.then().contentType(ContentType.JSON).extract().path("coord.lon"));

需要使用Float.toString()方法

String lon=Float.toString(r.then().contentType(ContentType.JSON).extract().path("coord.lon"));

如果需要更多信息,请访问此网站 http://javadevnotes.com/java-float-to-string-examples

关于java - 在 selenium 中使用 String.ValueOf() 将 Float 转换为 String 显示异常 - java.lang.ClassCastException : java. lang.Float 无法转换为 [C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55859862/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com