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浏览器就可以正常打开,导航到博客园首页。

 

 

你可能感兴趣的:(selenium)