---------------------------------------------------------------------------------------------------------javascript
1、Selenium-RC 是 selenium-remote control 縮寫,是使用具體的語言來編寫測試類。css
2、準備工做: 1,下載 selenium 了,到http://www.openqa.org/selenium/下載就能夠了,記得選擇selenium-rc 的版本html
2, 學習一下xpath 的知識。有個教程:http://www.zvon.org/xxl/XPathTutorial/General_chi/examples.htmljava
3, 安裝 jdk1.5css3
3、selenium-rc 一些使用方法chrome
1,解壓selenium-rc壓縮包瀏覽器
2,啓動服務器服務器
Selenium Server是用JAVA實現的,相應的庫文件在HOME/server/selenium-server.jar。運行以下代碼從命令行啓動:dom
java 代碼 : java -jar selunium-server.jar工具
4、編寫測試用例
須要的JAR: selenium-java-client-driver.jar;junit
編寫一個JUNIT的單元測試,要構建一個Selenium,包括以下步驟:
* 構建一個Selenium實例
* 啓動Selenium實例
* 執行Selenium命令,並驗證結果。
* 關閉Selenium實例
以下是一個示例,用來測試http://www.google.com/,查找selenium,指望結果中包含"OpenQA: Selenium"
1. package com.thoughtworks.selenium;
2.
3. import junit.framework.*;
4.
5. import org.openqa.selenium.server.*;
6.
7. public class GoogleTest extends TestCase
8. {
9. private Selenium selenium;
10.
11. public void setUp() throws Exception {
12. String url = "http://www.google.com";
13. selenium = new DefaultSelenium("localhost", SeleniumServer.getDefaultPort(), "*firefox", url);
14. selenium.start();
15. }
16.
17. protected void tearDown() throws Exception {
18. selenium.stop();
19. }
20.
21. public void testGoogleTestSearch() throws Throwable {
22. selenium.open("/intl/zh-CN/");
23. selenium.type("q", "selenium");
24. selenium.click("btnG");
25. selenium.waitForPageToLoad("30000");
26. assertEquals("selenium - Google 搜索", selenium.getTitle());
27.
28. }
29.
30. }
5、多環境測試
package test; import org.junit.Test; import junit.framework.TestCase; import com.thoughtworks.selenium.DefaultSelenium; @Test private void script(Selenium selenium) throws Exception { |
6、如何選取元素
selenium提供以下強大的定位元素的方法。
id=id |
1 經過ID,name選擇元素 : 如 selenium.type("id=q","百度"); selenium.type("name=search","百度")
2 link= 根據連接文字來操做:如 selenium.click("link=我的資料");
3 根據XPath來選擇元素 : XPath Checker
* xpath=//img[@alt='The image alt text'] |
4 dom選擇
* dom=document.forms['myForm'].myDropdown |
5 css選擇器
這個不經常使用,它能夠支持css2, css3選擇器
* css=a[href="#id3"] |
7、使用selenium 這個對象來進行測試
1 獲取標 : assertEquals("Insert title here", selenium.getTitle());
2 判斷頁面是否存在一個user.email元素 :assertTrue(selenium.isElementPresent("xpath=//input[@name='user.email']"));
3 獲得文本框裏的文字: assertEquals(selenium.getValue("xpath=//input[@name='user.username']"),"xxxaas");
4 測試check box : assertTrue(selenium.isChecked("xpath=//input[(@name='user.sex')and(@value='男')]"));
5 點擊提交按鈕 : selenium.click("xpath=//input[@type='button']");
6 等待頁面載入 : selenium.waitForPageToLoad("2000");
7 驗證指定文本出如今提交給用戶的頁面上: assertTrue(selenium.isTextPresent("驗證碼輸入有誤,請覈實後再輸入"));
8 判斷下拉框裏選擇了哪一個選項 :assertEquals(selenium.getSelectedIndex("xpath=//SELECT[@name='HATIMING']"), "1");
9 如何測試一些錯誤消息的顯示? assertTrue(selenium.getBodyText().indexOf("錯誤消息")>=0);
getBodyText 返回的時瀏覽器頁面上的文字,不回包含html 代碼的,若是要顯示html 代碼,用下面這個:selenium.getHtmlSource();
8、Firefox 的插件
1 XPath Checker :能夠用這個工具測試簡化咱們的xpath表達式
2 Firebug
3 Selenium IDE
4 Execute JS