2

Excel から値を読み取り、ユーザー名とパスワードのフィールドに入力したいシナリオがあります。後で、Excel の値と比較して、入力されたユーザー名とパスワードが適切かどうかを確認します。

以下は、「gmail」に関するサンプルコードです。HTML コード:

<input type="password" name="Passwd" id="Passwd">

ウェブドライバー コード:

Driver.driver.get("https://www.gmail.com");
Driver.driver.findElement(By.name("Passwd")).sendKeys("mahesh");
    System.out.println(Driver.pFLogin.getTxtPassword().getAttribute("value"));

パスワードフィールドに「値」属性がないため、上記のコードでエラーが発生します

これについて私を助けてください..

ありがとうマヘシュ

4

3 に答える 3

0

このコードを一度試してください

File sr=new File("File path");
    //load file
    FileInputStream fis=new FileInputStream(sr);
    //load workbook
    XSSFWorkbook wb=new XSSFWorkbook(fis);
    XSSFSheet wsh=wb.getSheetAt(0);
    //read data
    String s1=wsh.getRow(0).getCell(0).getStringCellValue();
    String s2=wsh.getRow(0).getCell(1).getStringCellValue();
    String s3=wsh.getRow(0).getCell(2).getStringCellValue();
    System.out.println(s1+" "+s2+" "+s3);
    Thread.sleep(3000); 
    fis.close();
    WebDriver d1=new FirefoxDriver();
    d1.get("website url");
    d1.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);
    Thread.sleep(10000);
    d1.findElement(By.xpath("//*[@id='username']")).sendKeys(s2);
    d1.findElement(By.xpath("//*[@id='password']")).sendKeys(s3);
    d1.findElement(By.xpath("xpath of the element")).click();
    Thread.sleep(3000);
    d1.close();


    FileInputStream fs=new FileInputStream("file path");
    Workbook wb1=WorkbookFactory.create(fs);
    Sheet sh=wb1.getSheetAt(0);
    Row row=sh.createRow(row value);
    //Write data
    Cell cell=row.createCell(cell value);
    cell.setCellType(Cell.CELL_TYPE_STRING);
    cell.setCellValue("ravi");
    FileOutputStream fos=new FileOutputStream("file path");
    wb1.write(fos);
    fos.close();

}

}

于 2016-06-24T09:53:32.867 に答える
0

パスワードを確認したい場合 (画面上やテストの実行中など) は、JSexecutor を使用できます。

        JavascriptExecutor js = (JavascriptExecutor) driver;
    js.executeScript("var arr = document.getElementsByTagName(\"input\");\n" +
            "for (var i = 0; i < arr.length; i++) {\n" +
            "    if (arr[i].type == 'password') arr[i].setAttribute('type','text');\n" +
            "}");

    String password = fPassword.getAttribute("value");
    logger.debug("pass:" +password);
于 2018-09-28T14:25:22.363 に答える