Excel data Reading as null | Selenium Forum
M
Posted on 16/03/2016
hi Ashish, i tried to login to gmail with data reading fro excel. the code reads the data from cells as null.

CODE:

[color=#0000BF:1y0pr5j6]public class LoginTest {
static WebDriver driver;
@BeforeTest
public void log(){
WebDriver driver = new FirefoxDriver();
driver.get("http://gmail.com");
}
@Test(dataProvider="getData")
public void doLogin(String user,String pass){
System.out.println(user+"---"+pass);
driver.findElement(By.xpath("//*[@id='Email']")).sendKeys(user);
// driver.findElement(By.xpath("")).sendKeys(pass);
driver.findElement(By.xpath("//*[@id='next']")).sendKeys(Keys.ENTER);

}

@DataProvider
public Object[][] getData(){
Xls_Reader xls = new Xls_Reader("C:\\Users\\Vishwa\\Desktop\\gmail.xlsx");
int rows = xls.getRowCount("data");
int cols = xls.getColumnCount("data");
Object[][] data = new Object[rows-1][cols];
for(int rnum=2; rnum<=rows; rnum++){
for(int cnum=0; cnum<cols; cnum++){
data[rnum-2][cnum]=xls.getCellData("data", rnum, cnum);
System.out.println(data[rnum-2][cnum]);
}
}

return data;
}[/color:1y0pr5j6]

[b:1y0pr5j6]
OUTPUT:
[/b:1y0pr5j6]
[TestNG] Running:
C:\Users\Vishwa\AppData\Local\Temp\testng-eclipse--660575302\testng-customsuite.xml











---
---
---
---
---
FAILED: doLogin("", "")
java.lang.NullPointerException
at module171.LoginTest.doLogin(LoginTest.java:21)
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:85)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:639)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:816)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1124)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:125)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108)
at org.testng.TestRunner.privateRun(TestRunner.java:774)
at org.testng.TestRunner.run(TestRunner.java:624)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:359)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:354)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:312)
at org.testng.SuiteRunner.run(SuiteRunner.java:261)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1215)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1140)
at org.testng.TestNG.run(TestNG.java:1048)
at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:112)
at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:205)
at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:176)

FAILED: doLogin("", "")
java.lang.NullPointerException
at module171.LoginTest.doLogin(LoginTest.java:21)


FAILED: doLogin("", "")
java.lang.NullPointerException
at module171.LoginTest.doLogin(LoginTest.java:21)



FAILED: doLogin("", "")
java.lang.NullPointerException
at module171.LoginTest.doLogin(LoginTest.java:21)

FAILED: doLogin("", "")
java.lang.NullPointerException
at module171.LoginTest.doLogin(LoginTest.java:21)

===============================================
Default test
Tests run: 5, Failures: 5, Skips: 0
===============================================


===============================================
Default suite
Total tests run: 5, Failures: 5, Skips: 0
===============================================

[TestNG] Time taken by org.testng.reporters.JUnitReportReporter@3e31ee: 17 ms
[TestNG] Time taken by org.testng.reporters.EmailableReporter2@f40c25: 81 ms
[TestNG] Time taken by org.testng.reporters.SuiteHTMLReporter@1089e5f: 257 ms
[TestNG] Time taken by org.testng.reporters.XMLReporter@4c0bc4: 17 ms
[TestNG] Time taken by [FailedReporter passed=0 failed=0 skipped=0]: 24 ms
[TestNG] Time taken by org.testng.reporters.jq.Main@3e4790: 144 ms

[b:1y0pr5j6]excel sheet attached:[/b:1y0pr5j6]

M
Replied on 16/03/2016

are you using junit or testng?


M
Replied on 16/03/2016

TestNG


M
Replied on 16/03/2016

send a screen shot with import statement.


M
Replied on 16/03/2016

screen shot attached

Responsive image

M
Replied on 16/03/2016

problem is here

data[rnum - 2][cnum] = xls.getCellData("Sheet1", cnum, rnum);


you had cnum and rnum reversed.


M
Replied on 17/03/2016

Thanks ashish. its working now. never assumed this could be a problem. I must be careful with this situation.