隐藏

Selenium for C#的入门Demo

发布:2021/2/19 17:23:33作者:管理员 来源:本站 浏览次数:1000

最近刚开始接触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的同级目录下。

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