您的位置:軟件測(cè)試 > 開(kāi)源軟件測(cè)試 > 開(kāi)源功能測(cè)試工具 > Selenium
菜鳥(niǎo)學(xué)自動(dòng)化測(cè)試??selenium系列全集
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/4/3 14:43:08 ] 推薦標(biāo)簽:

菜鳥(niǎo)學(xué)自動(dòng)化測(cè)試(八)----selenium 2.0環(huán)境搭建(基于maven)

之前我講過(guò)一種方試來(lái)搭建selenium rc 的環(huán)境搭建,那個(gè)文章是基于selenium RC 1.0的的方式,目前官網(wǎng)已經(jīng)不提供1.0的下載了,我所提供的下載鏈接是CSDN上的。

其實(shí),如果大家熟悉maven的話,selenium RC將變成易常簡(jiǎn)單,當(dāng)然,我的操作還是基于java語(yǔ)言陣營(yíng)的。

前提:你要有maven環(huán)境。關(guān)于maven環(huán)境的搭建,請(qǐng)參考本博客的關(guān)于maven的文章。左側(cè)導(dǎo)航欄有maven環(huán)境搭建的相關(guān)文章。

第一步:

Cmd打開(kāi)命令提示符號(hào),創(chuàng)建一個(gè)maven項(xiàng)目,命令如下:

mvn archetype:generate -DgroupId=MySel20Proj -DartifactId=MySel20Proj  -Dversion=1.0

打開(kāi)創(chuàng)建的項(xiàng)目,找到項(xiàng)目目錄下面的pom.xml文件,打開(kāi),在<dependencies>...</dependencies>之前加上如下內(nèi)容:

<dependency>
      <groupId>org.seleniumhq.selenium</groupId>
      <artifactId>selenium-java</artifactId>
       <version>2.16.1</version>
 </dependency>

我們將junit的版本改為4.2 。修改之后完整的pom.xml代碼如下:

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
   
      <groupId>MySel20Proj</groupId>
      <artifactId>MySel20Proj</artifactId>
      <version>1.0</version>
      <packaging>jar</packaging>
   
      <name>MySel20Proj</name>
      <url>http://maven.apache.org</url>
   
      <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      </properties>
   
      <dependencies>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>4.2</version>
          <scope>test</scope>
        </dependency>


        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
             <artifactId>selenium-java</artifactId>
             <version>2.16.1</version>
        </dependency>
      </dependencies>
    </project>

Ok.!現(xiàn)在在命令提示符號(hào)下切換到項(xiàng)目目錄下:

D:javaMySel20Proj> mvn eclipse:clean

D:javaMySel20Proj> mvn eclipse:celipse    執(zhí)行這個(gè)需要下載相應(yīng)的包,時(shí)間會(huì)久一些。

現(xiàn)在把我們構(gòu)建好的項(xiàng)目導(dǎo)入eclipse中,如果有問(wèn)題請(qǐng)參考我的maven文章。

http://www.cnblogs.com/fnng/archive/2011/12/02/2272610.html

我們依然用之前的代碼進(jìn)行測(cè)試,(這段代碼還是基于selenium 1.0的selenium RC)

import com.thoughtworks.selenium.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.util.regex.Pattern;

public class test extends SeleneseTestCase {
    @Before
    public void setUp() throws Exception {
        selenium = new DefaultSelenium("localhost", 4444, "*iexplore",
                "http://www.baidu.com/");
                selenium.start();
    }

    @Test
    public void testTest() throws Exception {
        selenium.open("/");
        selenium.type("id=kw", "aaaa");
        selenium.click("id=su");
            }

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

當(dāng)然,你可以用可用selenium IDE錄制腳本,將腳本導(dǎo)出成java所類型的語(yǔ)言進(jìn)行測(cè)試,方式參考:
http://www.cnblogs.com/fnng/archive/2011/10/19/2217506.html

--上面的代碼與方式,已經(jīng)不是推薦使用的方式了。因?yàn)閟elenium 2.0來(lái)了,selenium RC的舞臺(tái)該退場(chǎng)了。

詳解maven方式添加插件

為了得到一個(gè)不同的selenium Maven工件的概述,請(qǐng)看下圖,它顯示selenium Maven工件以及重要的類以及這些類接口之間的依賴關(guān)系:

如果你想使用不同的WebDriver來(lái)運(yùn)行代碼,如:FirefoxDriver 你不必依靠selenium Java 構(gòu)建(其中有很多的傳遞依賴),你只需要需要在pom.xml文件中添加相應(yīng)的插件可以了。

<dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-firefox-driver</artifactId>
        <version>2.18.0</version>
</dependency>


然后,在cmd(命令提示符)下,將項(xiàng)目重新構(gòu)建一下行了(再次執(zhí)行mvn eclipse:eclipse 命令)。Maven自動(dòng)下載我們所需要的FirefoxDriver 相關(guān)jar包。

如果您正在使用DefaultSelenium(或RemoteWebDriver的 實(shí)現(xiàn)),你仍然需要啟動(dòng)Selenium Server。好的辦法是下載selenium Server standalone.jar ,只是用它。此外,您還可以嵌入到自己的項(xiàng)目Selenium Server,下面的依賴關(guān)系,如果你添加到你的pom.xml:

<dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-server</artifactId>
        <version>2.18.0</version>
</dependency>

注意:這個(gè)selenium Server 產(chǎn)品依賴于servlet-API-2.5 產(chǎn)品。如果你的項(xiàng)目運(yùn)行在一個(gè)web應(yīng)用程序容器的依賴,你應(yīng)該排除。

第三方的瀏覽器不被支持,請(qǐng)用seleniumhq 開(kāi)發(fā)的插件;

<dependency>
        <groupId>com.opera</groupId>
        <artifactId>operadriver</artifactId>
        <version>0.10</version>
</dependency>

以上參考內(nèi)容:

http://seleniumhq.org/docs/03_webdriver.html

http://seleniumhq.org/download/maven.html

什么是Selenium 2.0 ?


從較高的層次看,Selenium由三種工具組成。第一個(gè)工具Selenium IDE,是Firefox的擴(kuò)展插件,支持用戶錄制和回訪測(cè)試。錄制/回訪模式?存在局限性,對(duì)許多用戶來(lái)說(shuō)并不適合,因此第二個(gè)工具——Selenium WebDriver提供了各種語(yǔ)言環(huán)境的API來(lái)支持更多控制權(quán)和編寫符合標(biāo)準(zhǔn)軟件開(kāi)發(fā)實(shí)踐的應(yīng)用程序。后一個(gè)工具——Selenium Grid幫助工程師使用Selenium API控制分布在一系列機(jī)器上的瀏覽器實(shí)例,支持并發(fā)運(yùn)行更多測(cè)試。在項(xiàng)目?jī)?nèi)部,它們分別被稱為“IDE”、“WebDriver”和“Grid”。

而現(xiàn)在我們大家能看到的:selenium2.0 = selenium1.0+ webdriver

什么是WebDriver?

WebDriver是一個(gè)自動(dòng)化測(cè)試Web應(yīng)用程序的工具,尤其以驗(yàn)證它們是否如預(yù)期運(yùn)作。它旨在提供一個(gè)友好的API,它很容易探討和理解,更容易比的Selenium-RC(1.0)API,這將有助于使你的測(cè)試更容易閱讀和維護(hù)使用。它不依賴任何特定的測(cè)試框架,因此它可以用來(lái)在一個(gè)單元測(cè)試,或從一個(gè)普通的舊的“main”的方法同樣。

下一節(jié)來(lái)學(xué)習(xí)如何selenium 2.0的新東東 webdriver !

上一頁(yè)1234567891011下一頁(yè)
軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd