selenium java自動化測試

zm_21發表於2014-06-03

本篇文章初步介紹使用Java+Selenium進行web的自動化測試, 僅僅是起步!!!!

1. 環境準備

  1.1 Java環境
安裝, 配置jdk
  1.2 Java IDE
因為Selenium支援Java/C#/Ruby/Python/Perl等,這裡選擇用Java。到Eclipse官方網站下載Eclipse, 解壓
  1.3 Selenium
到Selenium官方網站http://seleniumhq.org/download/下載Selenium IDE,Selenium Server, Selenium Client Driver
      以上三者之間的關係是:
      Selenium IDE可以錄製指令碼,執行指令碼,修改指令碼,將錄製的指令碼匯出成其他語言(比如Java)---本篇不討論
      Selenium Server是和Selenium Client結合使用的,Server用來啟動瀏覽器,接受Client端的請求,執行test;
      Client端則是向Server端傳送請求。


2. 在Eclipse中編輯並執行test
    2.1 新建一個Java project: File-New-Java Project
    2.2 在上一步建好的專案名稱上點滑鼠右鍵, 點選Build Path-Add External Archives...,將下載的selenium-java-2.21.0.jar(client)和selenium-server-standalone-  2.21.0.jar(server)加進來

    2.3 啟動selenium server.進入cmd,執行 "java  -jar selenium-server-standalone-2.21.0.jar" --保證能找到改jar包。資訊如下:

  1. 資訊: Launching a standalone server  
  2. 22:16:21.484 INFO - Java: Sun Microsystems Inc. 17.1-b03  
  3. 22:16:21.500 INFO - OS: Windows XP 5.1 x86  
  4. 22:16:21.515 INFO - v2.21.0, with Core v2.21.0. Built from revision 16552  
  5. 22:16:21.859 INFO - RemoteWebDriver instances should connect to: http://127.0.0.   
  6. 1:4444/wd/hub  
  7. 22:16:21.875 INFO - Version Jetty/5.1.x  
  8. 22:16:21.875 INFO - Started HttpContext[/selenium-server/driver,/selenium-server  
  9. /driver]  
  10. 22:16:21.875 INFO - Started HttpContext[/selenium-server,/selenium-server]  
  11. 22:16:21.875 INFO - Started HttpContext[/,/]  
  12. 22:16:22.062 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@5d173  
  13. 22:16:22.062 INFO - Started HttpContext[/wd,/wd]  
  14. 22:16:22.093 INFO - Started SocketListener on 0.0.0.0:4444  
  15. 22:16:22.093 INFO - Started org.openqa.jetty.jetty.Server@32fb4f  
資訊: Launching a standalone server
22:16:21.484 INFO - Java: Sun Microsystems Inc. 17.1-b03
22:16:21.500 INFO - OS: Windows XP 5.1 x86
22:16:21.515 INFO - v2.21.0, with Core v2.21.0. Built from revision 16552
22:16:21.859 INFO - RemoteWebDriver instances should connect to: http://127.0.0.
1:4444/wd/hub
22:16:21.875 INFO - Version Jetty/5.1.x
22:16:21.875 INFO - Started HttpContext[/selenium-server/driver,/selenium-server
/driver]
22:16:21.875 INFO - Started HttpContext[/selenium-server,/selenium-server]
22:16:21.875 INFO - Started HttpContext[/,/]
22:16:22.062 INFO - Started org.openqa.jetty.jetty.servlet.ServletHandler@5d173
22:16:22.062 INFO - Started HttpContext[/wd,/wd]
22:16:22.093 INFO - Started SocketListener on 0.0.0.0:4444
22:16:22.093 INFO - Started org.openqa.jetty.jetty.Server@32fb4f

2.4 程式碼測試

  1. import com.thoughtworks.selenium.DefaultSelenium;  
  2.    
  3. public class SeleniumDemo01  
  4. {  
  5.   public static void main(String[] args)  
  6.   {  
  7.       String host = "localhost";  
  8.       int port = 4444;  
  9.       String url = "http://www.baidu.com/";  
  10.       String browserType = "*firefox";  
  11.    
  12.       String keyWordsLocator = "document.getElementById('kw')";     
  13.       String search = "document.getElementById('su')";  
  14.       DefaultSelenium selenium = new DefaultSelenium(host,port,browserType,url);  
  15.       selenium.start();  
  16.       selenium.open(url);  
  17.       selenium.type(keyWordsLocator,"java selenium");  
  18.       selenium.click(search);  
  19.       selenium.waitForPageToLoad("50000");  
  20.       selenium.stop();  
  21.        
  22.   }  
  23. }  
  24. 執行結果:  
  25.     1.firefox瀏覽器期待  
  26.     2.開啟百度主頁  
  27.     3.在搜尋框中鍵入了"java selenium"  
  28.     4.點選"百度一下"按鈕  
  29.     5.等等頁面載入50s  
  30.     6.關閉瀏覽器  

origin:http://blog.sina.com.cn/s/blog_6ab204b001017h2b.html

相關文章