Selenium for C#的入門Demo


最近剛開始接觸Selenium, 發現很多例子都是用java寫的,因為自己學的java早就忘記了,現在一直都是用的C#,這里自己參考java的代碼自己寫了一個C#,這里用到的是WebDriver,也就是所謂的Selenium2.0吧

首先是使用環境配置

1)下載配置java環境,下載安裝JDK或者JRE,在JDK安裝完成后在cmd的指令輸入java查看java環境是否搭建完成,如果報“java is not recognized as an internal or external command”. 那么請將JDK中bin的安裝路徑添加到環境變量Path中去(我的電腦右擊屬性—高級系統設置—環境變量—Path,這里我系統是Win7的)

2)下載並運行Selenium Server,官方下載地址:http://docs.seleniumhq.org/download/

要下載的Selenium Server包是Selenium-Server-standalone-2.39.0.jar。要下載的語言包是C#的Selenium-donet-2.39.0.zip

啟動Selenium測試服務器,在cmd命令下找到Selenium server包,然后運行java -jar Selenium-Server-standalone-2.39.0.jar

3)編寫測試項目,在VS中新建一個單元測試項目,給項目添加引用,把C#的Selenium-donet-2.39.0包里的dll文件(Selenium.WebDriverbackedSelenium.dll,ThoughtWorkd.Selenium.Core.dll,WebDriver.dll,WebDriver.Support.dll)添加到項目中,代碼如下。功能是使用的Firefox瀏覽器打開百度首頁,然后搜索Selenium。

using Microsoft.VisualStudio.TestTools.UnitTesting;
using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;

namespace SeleniumTestProject
{
    [TestClass]
    public class SeleniumTest
    {
        [TestMethod]
        public void TestMethod()
        {

            IWebDriver driver = new FirefoxDriver();

            driver.Navigate().GoToUrl("http://www.baidu.com");
            driver.FindElement(By.Id("kw")).SendKeys("Selenium");
            driver.FindElement(By.Id("su")).Click();

            driver.Quit();
        }
    }
}

上面是創建了一個Firefox Driver的實例,因為firefox是默認安裝路徑,所以webdriver可以直接訪問到它。如果你想用IE和Chrome瀏覽器,則需要另外下載IEDriverServer.exe 和chromeDriver.exe.

如果在使用IE瀏覽器的時候遇到一個異常說安全模式的問題,那么我自己看到的一個解決辦法,就是設置IEDriverOpiton。具體代碼如下。我的IEDriverServer.exe放在IE的同級目錄下。

              InternetExplorerOptions ieO=new InternetExplorerOptions(); 
              //設置ingnore protected mode值為真
              ieO.IntroduceInstabilityByIgnoringProtectedModeSettings=true; 
              IWebDriver driver = new InternetExplorerDriver(@"C:\Program Files\Internet Explorer",ieO);            
              driver.Navigate().GoToUrl("http://www.cnblogs.com");

 這樣IE瀏覽器就可以正常打開,導航到博客園首頁。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM