我正在使用IBm Rational Functional Tester(RFT)8.0.6来自动化我的基于Java的HTML应用程序。 我正在使用命令行启动RFT和我的自动化脚本及其正确启动,但唯一的问题是它无法从数据池中读取。 注意:当我直接从RFT运行它时,这工作正常。只有当我尝试从命令行运行它时才会发生这种情况。
以下是错误日志:
exception_name = com.rational.test.ft.DatapoolException
•exception_message = CRFCN0483E: Datapool file not found: Appconfigsuperclass\driver_testdata.csv
•script_name = Appconfigsuperclass.AppConfigDriverScript
•script_id = Appconfigsuperclass.AppConfigDriverScript.java
•line_number = 55
•exception_stack = at com.rational.test.ft.datapool.DatapoolUtilities.loadCSV(DatapoolUtilities.java:127)
at Appconfigsuperclass.Resuablemethods.import_csv_datapool(Resuablemethods.java:71)
at Appconfigsupe`enter code here`rclass.AppConfigDriverScript.testMain(AppConfigDriverScript.java:55)
at org.eclipse.equinox.internal.app.EclipseAppContainer.callMethodWithException(EclipseAppContainer.java:587)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:198)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
at org.eclipse.equinox.launcher.Main.main(Main.java:1414)
at org.eclipse.core.launcher.Main.main(Main.java:34)
我的批处理文件包含以下内容:
set PATH=%PATH%;C:\Program Files (x86)\Java\jdk1.7.0_03\bin
cd C:\Program Files (x86)\IBM\SDP\FunctionalTester\bin
java -jar rational_ft.jar -datastore "C:\Users\a554431\automationworkspace\Project1" -playback "Appconfigsuperclass.AppConfigDriverScript" -language java -log "test"
感谢您的帮助。
答案 0 :(得分:0)
我认为正在使用的文件路径(Appconfigsuperclass \ driver_testdata.csv)是相对于当前目录的,如果IDE是项目目录。 如果您按如下方式添加支票:
File f = new File("<path of csv>");
Boolean exists = f.exists();
if(exists)
DatapoolUtilities.loadCSV(f);
else
System.out.println("Error!! CSV file to load , not found!!");
我认为你应该看到找不到csv文件的错误。
如果你这样做,你应该传递CSV文件的绝对路径,这应该解决问题。