1

Web アプリケーションをテストするために、Java で Selenium Webdriver に裏打ちされたコードがあります。私のコードは以下のとおりです。

package testcases;

import com.thoughtworks.selenium.Selenium;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebDriverBackedSelenium;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import static org.junit.Assert.*;
import java.util.regex.Pattern;

public class Untitled {
private Selenium selenium;

@Before
public void setUp() throws Exception {
        WebDriver driver = new FirefoxDriver();
        String baseUrl = "http://www.himalayanpalmistry.com/";
        selenium = new WebDriverBackedSelenium(driver, baseUrl);
}

@Test
public void testUntitled() throws Exception {
        selenium.open("/mabiz/");
        selenium.select("id=register_type", "label=für Unternehmen");
        selenium.click("id=rgst");
        selenium.waitForPageToLoad("30000");
        selenium.type("id=username", "javatesting1");
        selenium.type("id=password", "12345678");
        selenium.type("id=confirm_password", "12345678");
        selenium.type("id=name", "java testing");
        selenium.type("id=position", "java testing");
        selenium.type("id=company", "java testing");
        selenium.type("id=address", "java testing");
        selenium.type("id=zipcode", "12345");
        selenium.type("id=city", "safdj");
        selenium.type("id=phone", "kfajs");
        selenium.type("id=email", "tsandesh23@hotmail.com");
        selenium.click("id=show_contact_info");
        selenium.click("id=product_select3");
        selenium.click("id=term_condition1");
        selenium.click("name=submit_one");
        selenium.waitForPageToLoad("30000");
}

@After
public void tearDown() throws Exception {
        selenium.stop();
}
}

このコードを Microsoft Excel データを読み取るように変更し、このコードで多くのテストを行いたいと考えています。私のExcelファイルには、さまざまなテストデータが含まれています。事前にサンクス!!

4

5 に答える 5

1

この API を使用して、Java から Excel の行を読み取ることができます: http://jexcelapi.sourceforge.net/ チュートリアルは素晴らしく、ここで見つけることができます: http://www.andykhan.com/jexcelapi/tutorial.html

また、スクリプト内のユーザー名とパスワードを stackoverflow に投稿する際にも注意してください ;)

于 2013-01-07T11:44:21.753 に答える
0
   1.Read excel example


    InputStream stream = new FileInputStream(projectFile.getPath());
    ExcelWorkbookContainer container = new ExcelWorkbookContainer(stream);
    Iterator<ExcelRecord> recordIterator = container.getRecordIterator(0);
    //NO TITLE
    recordIterator.next();

    while(recordIterator.hasNext()) {
        ExcelRecord record = recordIterator.next();
         clusterObj.setBrand(record.getValue(ClusterColum.BRAND.getColumIndex()));
    }
    stream.close();

///// poi example

public class ExcelWorkbookContainer {

    private String filename;
    private XSSFWorkbook workbook;

    /**
     * @param filename
     * @throws FileNotFoundException, IOException
     */
    public ExcelWorkbookContainer(String filename)
            throws FileNotFoundException, IOException {
        this(new FileInputStream(filename));
        this.filename = filename;
    }

    /**
     * @param inputStream
     * @throws FileNotFoundException, IOException
     */
    public ExcelWorkbookContainer(InputStream inputStream)
            throws IOException {
        if (inputStream == null) {
            throw new NullPointerException("Input Stream is null");
        }

        workbook = new XSSFWorkbook(inputStream);
    }

    /**
     * Create a composite iterator on the excel records
     * 
     * @param sheetId the id of the sheet for data extraction
     * @return composite iterator on the excel records
     */
    public Iterator<ExcelRecord> getRecordIterator(int sheetId) {
        return new ExcelRecordIterator(workbook.getSheetAt(sheetId));
    }

    /**
     * Create a composite iterator on the excel records
     * 
     * @param sheetId the id of the sheet for data extraction
     * @return composite iterator on the excel records
     */
    public Iterator<ExcelRecord> getRecordIterator(int sheetId, String[] headers) {
        return new ExcelRecordIterator(workbook.getSheetAt(sheetId), headers);
    }

    public String getFilename() {
        return filename;
    }

    public XSSFWorkbook getWorkbook() {
        return workbook;
    }
}
于 2013-06-19T13:55:18.060 に答える
0

Excel を読み書きするために、POIRE というオープン ソース ライブラリを作成しました。これには、多くのユーザー フレンドリーなメソッドが含まれています。

https://github.com/ssirekumar/POIRE

https://github.com/ssirekumar/POIRE/releases

ポワール

POI クラスを使用して Java で Microsoft Ms-office (Excel、Ms Word、PowerPoint) ファイル処理を行います。この API は、POI ライブラリの上に開発されました。Ms-office ファイル (Excel、Ms Word、PowerPoint) を操作するための多くの方法があります。これらのメソッドは、POI の NPOIFSFileSystem & OPCPackage クラスの助けを借りて、バイナリ (.xls、.doc、.ppt) と XML (.xlsx、.docx、.pptx) の両方で機能します。これらのクラスを使用すると、ファイルの読み取りと書き込みが高速になります。

于 2015-02-03T13:28:23.080 に答える
0

Excel からデータを読み取るために使用できる Java の API は多数あります。

  1. JExcelApi.
  2. ポイ

回避策

Excel を CSV ファイルとして保存し (外部 API を使用したくない場合)、通常はテキスト ファイルとして読み取ります。ただし、カンマをセパレータとして使用してください。

詳細については、このリンクを確認してください: Java で Excel ファイルを読み書きする方法

これが役立つことを願っています:-)

于 2013-01-07T05:59:02.120 に答える
0

Apache POI を使用して Excel にアクセスできます http://poi.apache.org/spreadsheet/index.html

于 2013-01-07T05:53:47.650 に答える