如何在JSF项目中进行Selenium测试?

时间:2013-05-23 06:47:32

标签: jsf testing selenium integration-testing

我有一个非常大的JSF 1.2项目,我想写一些集成测试。 完美的情况是,当我可以从我的项目中运行这些测试时,它会打开我的浏览器并完成所有操作(使用Selenium),这些操作都是在我的测试用例中编写的。当它将运行这些测试时,不需要Ofc打开浏览器:)

我已经尝试了一些可能性,无论如何我仍然无法将任何硒库附加到我的项目中,我意识到我只是不知道从哪里开始 - 你能给我一些方向吗?

1 个答案:

答案 0 :(得分:2)

可能会帮到你, 你可以在测试方法中写下测试逻辑

package com.test;

import org.junit.After;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.NoSuchElementException;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

import java.util.concurrent.TimeUnit;

import static org.junit.Assert.fail;

public class test1 {
    private WebDriver driver;
    private String baseUrl;
    private StringBuffer verificationErrors = new StringBuffer();
    @Before
    public void setUp() throws Exception {
    driver = new InternetExplorerDriver();
        driver = new ChromeDriver();
        baseUrl = "http://www.google.com";
        driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
    }

    @Ignore
    @Test
    public void test1() throws Exception {
        // your test code 

    }

    @After
    public void tearDown() throws Exception {
        driver.quit();
        String verificationErrorString = verificationErrors.toString();
        if (!"".equals(verificationErrorString)) {
            fail(verificationErrorString);
        }
    }

    private boolean isElementPresent(By by) {
        try {
            driver.findElement(by);
            return true;
        } catch (NoSuchElementException e) {
            return false;
        }
    }
}

你只需要调用test1类来测试它。  会自动处理它。