什么是硒中的混合驱动和关键字驱动?

时间:2014-02-26 05:21:31

标签: selenium selenium-webdriver

请举例说明使用selenium进行混合驱动和关键字驱动。提前谢谢!

2 个答案:

答案 0 :(得分:0)

从未听说过混合驱动测试,您可能指的是测试hybrid applications

  

混合应用程序(混合应用程序)是一个结合了元素的应用程序   本机和Web应用程序。开发本机应用程序   用于特定平台并安装在计算设备上。卷筒纸   应用程序是针对多个平台而推广的,未安装   本地但通过浏览器在互联网上提供。混合动力   应用程序通常在移动计算环境中被提及。

关于Keyword driven testing,每个关键字对应于单独的测试操作,如鼠标单击,菜单项选择,击键,打开或关闭窗口或其他操作。关键字驱动的测试是一系列操作,采用关键字格式,模拟测试应用程序上的用户操作。

答案 1 :(得分:0)

以下是一个简单的混合(模块和数据驱动)框架类 -

SearchData.java

是否有要在测试中使用的数据代码。

package com.data;

public class SearchData {
    private String url;
    private String searchWord;

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public String getSearchWord() {
        return searchWord;
    }

    public void setSearchWord(String searchWord) {
        this.searchWord = searchWord;
    }
}

SearchPage.java

包含代码模块。

package com.page;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;

import com.data.SearchData;

public class SearchPage {
    WebDriver driver;

    public SearchPage(WebDriver driver) {
        this.driver = driver;
    }

    public void launchGoogle(SearchData searchData) {
        driver.get(searchData.getUrl());
    }

    public void search(SearchData searchData) {
        driver.findElement(By.name("q")).sendKeys(searchData.getSearchWord());
        driver.findElement(By.name("btnG")).click();
    }

}

GoogleTest.java

包含实际的Junit测试。

package com.test;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

import com.data.SearchData;
import com.page.SearchPage;

public class GoogleTest {
    protected WebDriver driver;

    @Before
    public void setUp() {
        driver = new FirefoxDriver();
    }

    @After
    public void tearDown() {
        driver.close();
        driver.quit();
    }

    @Test
    public void searchTest() throws InterruptedException {
        // set the data
        SearchData searchData = new SearchData();
        searchData.setUrl("https://www.google.com");
        searchData.setSearchWord("Selenium");

        // call the methods
        SearchPage searchPage = new SearchPage(driver);
        searchPage.launchGoogle(searchData);
        searchPage.search(searchData);
        Thread.sleep(10000);
    }
}

以上代码非常基础,可以在很大程度上得到增强。

关键字驱动框架使用SELENIUM IDE / ROBOT FRAMEWORK。