【自動化學習筆記】_環境搭建Selenium2+Eclipse+Java+TestNG_(一)

目錄html

第一步  安裝JDKjava

第二步 下載Eclipseweb

第三步 在Eclipse中安裝TestNG

第四步 下載Selenium IDE、SeleniumRC、IEDriverServer

第五步 下載Firefox、安裝Selenium IDE、firebug、Xpath checker、Xpath finder插件

第六步 啓動SeleniumRC

第七步 Eclipse執行Selenium的Java實例

第八步 TestNG執行Selenium的Java實例

下載地址chrome

 

 

第一步  安裝JDK瀏覽器


下載地址:http://www.oracle.com/technetwork/java/javase/downloads/安全

一、下載步驟:服務器

二、配置環境變量:oracle

  JAVA_HOME = E:\Java\Java\jdk1.7.0_15app

  PATH = %JAVA_HOME%\bin;%JAVA_HOME%\jre\bineclipse

  CLASSPATH = .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar

  注:上面這行的「.」不能忽略掉了。

三、驗證是否安裝成功:

第二步 下載Eclipse


下載地址:http://www.eclipse.org/downloads/

 

第三步 在Eclipse中安裝TestNG


第1種方法:直接安裝 Help->Install New Software

  

最後重啓eclipse.

 第2種方法:離線安裝

      1.下載附件(eclipse-testng離線包.zip),並解壓;
      2.將解壓後的文件..\eclipse-testng離線包\features\目錄下的文件夾org.testng.eclipse_6.8.6.20130607_0745放到eclipse--》features目錄下;
      3.將解壓後的文件..\eclipse-testng離線包\org.testng.eclipse_6.8.6.20130607_0745文件夾放到eclipse--》plugins目錄下;
      4.重啓eclipse.

驗證方法:file-->new-->other-->TestNg

第四步 下載Selenium IDE、SeleniumRC、IEDriverServer


下載地址:http://www.seleniumhq.org/download/

  1. Selenium IDE:selenium-ide-2.5.0.xpi 用來在Firefox上錄製腳本。 

  2.Selenium RC:selenium-server-standalone-2.40.0.jar 模擬服務器端,selenium 1.0執行腳本時須要單獨啓動該jar包, selenium webdriver無需單獨啓動。

  3.IEDriverServer:IEDriverServer_Win32_2.40.0.zip IE驅動

這裏,將下載獲得的全部文件,全存放在d:\xxx\selenium下面,方便管理:

第五步 下載Firefox、安裝Selenium IDE、firebug、Xpath checker、Xpath finder插件


下載地址:http://www.firefox.com.cn/download/

安裝完Firefox後,打開Firefox:

一、安裝Selenium IDE:

把前面下載的selenium-ide-2.5.0xpi拖放到Firefox,彈出下圖後,安裝便可。

 

二、安裝firebug:工具-->附加組件,搜索firebug、Xpath,安裝,重啓火狐瀏覽器。

驗證安裝成功:

第六步 啓動SeleniumRC


selenium 1.0須要啓動單獨rc,webdriver則不須要啓動。(具體緣由可自行百度或者參見我其餘學習筆記)

啓動seleniumRC的方法:
cmd命令行進入selenium-server-standalone-2.40.0.jar存放目錄(或者進入selenium-server-standalone-2.40.0.jar存放目錄而後在文檔路徑裏輸入cmd),而後輸入以下命令
java -jar selenium-server-standalone-2.40.0.jar

爲了方便,能夠寫一個批處理文件來執行,Run_selenium.bat,內容以下:

@echo off
cd E:\eclipse\selenium
E:
java -jar selenium-server-standalone-2.40.0.jar

第七步 Eclipse執行Selenium的Java實例


1.新建java工程:File-->new-->other-->Java Project

輸入工程名,完成以後彈出選擇視圖模式的確認框,能夠選NO。

2.引入Selenium相關的包:

在MyTest上右鍵,Properties-->Java Build Path-->Libraries-->Add External Jars

3.新建package和class:

在src上右鍵,new->package(名稱爲:Selenium_Java)

在Selenium_Java上右鍵,new->class(名稱爲:runasjavaapplication.java):

4.用selenium webdriver寫代碼以下:

   能夠打開不一樣的瀏覽器,用以開展兼容性測試。

   注:用ie瀏覽器打開時會有個報錯:

   

  解決辦法是講註釋掉的30-34行的代碼取消註釋,註釋掉36行的代碼便可(代碼中29行應爲:System.setProperty("webdriver.chrome.driver", file_chrome.getAbsolutePath());   46行最好寫成:my_dr.get("https://www.baidu.com");)。

 1 package Selenium_Java;  2 
 3 import java.io.File;  4 
 5 import org.openqa.selenium.By;  6 import org.openqa.selenium.WebDriver;  7 import org.openqa.selenium.chrome.ChromeDriver;  8 import org.openqa.selenium.firefox.FirefoxDriver;  9 import org.openqa.selenium.ie.InternetExplorerDriver; 10 import org.openqa.selenium.remote.CapabilityType; 11 import org.openqa.selenium.remote.DesiredCapabilities; 12 import org.testng.Assert; 13 
14 
15 /**
16  * @author : zmh 17  * @version :1.0 18  * @date :2016年03月06日 下午3:00:22 19  */
20 public class runasjavaapplication { 21 
22     public static void main(String[] args) throws InterruptedException { 23         
24         //-----------------------------打開火狐瀏覽器------------------------------------------------ 25         //WebDriver my_dr = new FirefoxDriver();// 打開火狐瀏覽器 原生支持的瀏覽器,可是不支持火狐高級的版本 26         
27         //-----------------------------打開Chrome瀏覽器---------------------------------------------
28         File file_chrome = new File("C:/Program Files/Google/Chrome/Application/chromedriver.exe"); 29         System.setProperty("webdriver.ie.driver", file_chrome.getAbsolutePath()); 30         //WebDriver my_dr = new ChromeDriver();// 打開chrome瀏覽器 31 
32         //-----------------------------打開IE瀏覽器--------------------------------------------------
33         File file_ie = new File("C:\\Program Files\\Internet Explorer\\IEDriverServer.exe"); 34         System.setProperty("webdriver.ie.driver", file_ie.getAbsolutePath()); 35         
36         //爲 Internet Explorer 設置安全性功能,不然會遇到一個安全問題提示:"Protected Mode must be set to the same value (enabled or disabled) for all zones" 37         //DesiredCapabilities caps = DesiredCapabilities.internetExplorer(); 38         //caps.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true); 39         //caps.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true); 40         //WebDriver my_dr = new InternetExplorerDriver(caps);// 打開ie瀏覽器
41         
42         WebDriver my_dr = new InternetExplorerDriver();// 打開ie瀏覽器 43 
44         //--------------------------------------------------------------------------------------- 45         //打開百度
46         my_dr.get("www.baidu.com"); 47 
48         Thread.sleep(1000); 49         //定位到百度的輸入框
50         my_dr.findElement(By.id("kw")).sendKeys("G7物流地圖"); 51         
52         Thread.sleep(1000); 53         //點擊搜索
54         my_dr.findElement(By.id("su")).click(); 55         
56         Thread.sleep(1000); 57         //打印頁面標題
58  System.out.println(my_dr.getTitle()); 59         //驗證頁面標題是否符合預期
60         Assert.assertEquals(my_dr.getTitle(), "G7物流地圖_百度搜索"); 61         
62         Thread.sleep(1000); 63         // 關閉全部webdriver進程,退出
64  my_dr.quit(); 65  } 66 }
View Code

5.用selenium1.0寫代碼以下:

 1 package Selenium_Java;  2 
 3 import com.thoughtworks.selenium.DefaultSelenium;  4 
 5 /**
 6  * @author : zmh  7  * @version :1.0  8  * @date :2016年3月6日 下午12:28:31  9  */
10 public class runasjavaapplication_selenium1 { 11     public static void main(String[] args) { 12         //建立一個selenium對象,調用DefaultSelenium的構造器,傳入參數,參數分別是:host:機器的ip地址、port:端口號、瀏覽器類型,url:要測試網站的連接
13         DefaultSelenium selenium = new DefaultSelenium("localhost", 4444, 14                 "*iexplore C:\\Program Files\\Internet Explorer\\iexplore.exe", 15                 "http://www.baidu.com/"); 16 
17  selenium.start(); 18         selenium.open("http://www.baidu.com"); 19         selenium.type("id=kw1", "G7物流地圖"); 20         selenium.click("id=su1"); 21         System.out.println("Page title is: " + selenium.getTitle()); 22  selenium.stop(); 23  } 24 }
View Code

上面提到的須要打開selenium rc還記得嗎?打開以後就能夠正常運行了。

第八步 TestNG執行Selenium的Java實例


 1.新建testng類:在工程上右鍵,new->other->TestNG(名稱爲:runastestng.java)

建立完成後以下:

2.寫代碼:

 1 package Selenium_TestNG;  2 
 3 import java.io.File;  4 
 5 import org.openqa.selenium.By;  6 import org.openqa.selenium.WebDriver;  7 import org.openqa.selenium.firefox.FirefoxDriver;  8 import org.openqa.selenium.ie.InternetExplorerDriver;  9 import org.openqa.selenium.remote.CapabilityType; 10 import org.openqa.selenium.remote.DesiredCapabilities; 11 import org.testng.Assert; 12 import org.testng.annotations.Test; 13 import org.testng.annotations.BeforeMethod; 14 import org.testng.annotations.AfterMethod; 15 import org.testng.annotations.BeforeClass; 16 import org.testng.annotations.AfterClass; 17 
18 /**
19  * @author : zmh 20  * @version :1.0 21  * @date :2016年3月6日 下午12:28:31 22  */
23 
24 public class runastestng { 25     
26     WebDriver mydr;// 申明全局變量。。。。。
27     
28  @Test 29   public void testng001() throws InterruptedException { 30     //-----------------------------打開IE瀏覽器--------------------------------------------------
31       File file_ie = new File("C:\\Program Files\\Internet Explorer\\IEDriverServer.exe"); 32       System.setProperty("webdriver.ie.driver", file_ie.getAbsolutePath()); 33         
34       //爲 Internet Explorer 設置安全性功能,不然會遇到一個安全問題提示:"Protected Mode must be set to the same value (enabled or disabled) for all zones"
35       DesiredCapabilities caps = DesiredCapabilities.internetExplorer(); 36       caps.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true); 37       caps.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true); 38       WebDriver my_dr = new InternetExplorerDriver(caps);// 打開ie瀏覽器 39       //打開百度
40       my_dr.get("www.baidu.com"); 41 
42       Thread.sleep(1000); 43       //定位到百度的輸入框
44       my_dr.findElement(By.id("kw")).sendKeys("G7物流地圖"); 45       Thread.sleep(1000); 46       //點擊搜索
47       my_dr.findElement(By.id("su")).click(); 48         
49       Thread.sleep(1000); 50       //打印頁面標題
51  System.out.println(my_dr.getTitle()); 52       //驗證頁面標題是否符合預期
53       Assert.assertEquals(my_dr.getTitle(), "G7物流地圖_百度搜索"); 54       Thread.sleep(5000); 55             
56  } 57  @BeforeMethod 58   public void beforeMethod() { 59       //switchTo相關能夠寫在這裏
60  } 61 
62  @AfterMethod 63   public void afterMethod() { 64     // 切換到主窗口、模擬刷新頁面
65  } 66 
67  @BeforeClass 68   public void beforeClass() { 69     //登錄相關能夠寫在這裏
70  } 71 
72  @AfterClass 73   public void afterClass() { 74      //瀏覽器關閉能夠寫在這裏
75  } 76 
77 }
View Code

運行以下:

3.查看運行報告:

固然,咱們也能夠繼承IReporter類,使用監聽器,達到美化報告的目的,這個之後再另外的筆記中補充。

注:搭建環境涉及到的安裝包能夠在這裏下載,此連接永久有效(缺乏包或者分享連接失效的能夠私信我去添加和修改):

連接: https://pan.baidu.com/s/1kCvVq-KpCY-c9aOYoukjSQ 密碼: hwui

相關文章
相關標籤/搜索