读取一个excel的内容并使用我的Robotiumtesting用例中的值

我想写一个代码,其中,我正在阅读一个Excel的内容,我必须使用从Excel中的值,并将其传递给我的Robotiumtesting用例。

这是我的代码:

ReadExcel类://读取第3列第2行的值以及第4列和第2行的值

公共类ReadExcel {

private String user,pass; public void read() throws BiffException, IOException { Workbook wrk1 = Workbook.getWorkbook(new File("D:/Robo/Book1.xls")); Sheet sheet1 = wrk1.getSheet(0); Cell username = sheet1.getCell(2,1); // the username from the excel Cell password = sheet1.getCell(3,1); // the password from the excel setUser(username.getContents()); setPass(password.getContents()); } public void setUser(String user) { this.user = user; } public String getUser() { return user; } public void setPass(String pass) { this.pass = pass; } public String getPass() { return pass; } 

}

这是使用Robotium的testing脚本

导入android.test.ActivityInstrumentationTestCase2; import com.ifs.banking.fiid5015.test.ReadExcel;

import com.robotium.solo.Solo;

@SuppressWarnings(“rawtypes”)公共类FSBTest扩展ActivityInstrumentationTestCase2 {

 private Solo solo; private String user,pass; private static final String TARGET_PACKAGE_ID = "com.ifs.banking.fiid5015"; private static final String LAUNCHER_ACTIVITY_FULL_CLASSNAME = "com.banking.activities.LoginActivity"; private static Class<?> launcherActivityClass; static { try { launcherActivityClass = Class .forName(LAUNCHER_ACTIVITY_FULL_CLASSNAME); } catch (ClassNotFoundException e) { throw new RuntimeException(e); } } @SuppressWarnings({ "deprecation", "unchecked" }) public FSBTest() throws ClassNotFoundException { super(TARGET_PACKAGE_ID, launcherActivityClass); } @Override protected void setUp() throws Exception { solo = new Solo(getInstrumentation(), getActivity()); } public void testApp() { ReadExcel rd= new ReadExcel(); // creating the object for Read excel class rd.read(); user = rd.getUser(); //passing the username pass = rd.getPass(); //passing the password // Login to the application solo.enterText(0,user); // Enter user name solo.sleep(1000); solo.enterText(1, "dsf"); solo.sleep(1000); solo.clickOnButton(1); // Try Login! (bad login) solo.sleep(10000); solo.clickOnButton("OK"); solo.sleep(5000); solo.enterText(1,pass); // Enter Password (authentic password) solo.sleep(5000); solo.clickOnButton(1); // Try Login! (Valid login) solo.sleep(10000); // MFA solo.clickOnButton(0); // choose Text Me (xxx-xxx-3576) solo.sleep(20000); solo.clickOnButton(0); solo.sleep(20000); } @Override public void tearDown() throws Exception { try { solo.finalize(); } catch (Throwable e) { e.printStackTrace(); } getActivity().finish(); super.tearDown(); } 

}

当我尝试运行我的项目,我遇到了一个java.lang.FileNotFoundException,似乎我无法从Excel中获取值。 基本上我卡在这里。 请帮助!

谢谢!

你必须把文件放入设备。 你可以使用例如SD卡。

 String baseDir = Environment.getExternalStorageDirectory().getAbsolutePath(); String fileName = "Book1.xls"; File f = new File(String.format("%s%s%s", baseDir, File.separator, fileName));