<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>automation &#8211; 扫地老僧的Blog</title>
	<atom:link href="https://doyj.com/tag/automation/feed/" rel="self" type="application/rss+xml" />
	<link>https://doyj.com</link>
	<description>Laputa - 远方地平线，闪耀着光芒</description>
	<lastBuildDate>Thu, 28 Nov 2013 02:57:43 +0000</lastBuildDate>
	<language>zh-Hans</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.2</generator>
	<item>
		<title>Selenium WebDriver学习笔记一</title>
		<link>https://doyj.com/2013/11/28/</link>
					<comments>https://doyj.com/2013/11/28/#respond</comments>
		
		<dc:creator><![CDATA[oldmonk]]></dc:creator>
		<pubDate>Thu, 28 Nov 2013 02:47:56 +0000</pubDate>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[automation]]></category>
		<category><![CDATA[selenium]]></category>
		<guid isPermaLink="false">http://www.doyj.com/?p=1978</guid>

					<description><![CDATA[Selenium是web自动化测试框架，从2.0版本后加入了webdriver功能， 可以用java，pyth &#8230; <a href="https://doyj.com/2013/11/28/" class="more-link">继续阅读<span class="screen-reader-text">Selenium WebDriver学习笔记一</span></... ]]></description>
										<content:encoded><![CDATA[<p><a title="Selenium" href="http://www.seleniumhq.org">Selenium</a>是web自动化测试框架，从2.0版本后加入了webdriver功能， 可以用java，python等主流语言完全操控浏览器进行自动化测试，功能非常强大。</p>
<p>下面演示一个很简单的例子，就是通过webdriver打开一个浏览器，然后访问google，搜索一个字符串，再显示结果页面的title。例子都是从selenium文档里抄的，语言为java。</p>
<ol>
<li>安装<a href="http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html">jdk</a>，<a href="http://maven.apache.org/">maven</a>（记得设置JAVA_HOME, M2_HOME宏）</li>
<li>在firefox安装<a href="http://www.seleniumhq.org/download/">selenium的插件</a></li>
<li>新建工程目录，创建pom.xml，内容如下
<pre lang="XML">
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>MySel20Proj</groupId>
        <artifactId>MySel20Proj</artifactId>
        <version>1.0</version>
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        </properties>
        <dependencies>
            <dependency>
                <groupId>org.seleniumhq.selenium</groupId>
                <artifactId>selenium-java</artifactId>
                <version>2.37.0</version>
            </dependency>
            <dependency>
                <groupId>com.opera</groupId>
                <artifactId>operadriver</artifactId>
            </dependency>
        </dependencies>
        <dependencyManagement>
            <dependencies>
                <dependency>
                    <groupId>com.opera</groupId>
                    <artifactId>operadriver</artifactId>
                    <version>1.5</version>
                    <exclusions>
                        <exclusion>
                            <groupId>org.seleniumhq.selenium</groupId>
                            <artifactId>selenium-remote-driver</artifactId>
                        </exclusion>
                    </exclusions>
                </dependency>
            </dependencies>
        </dependencyManagement>
</project>

</pre>
</li>
<li>在目录里执行: mvn clean install</li>
<li>在Idea里import新生成的maven project</li>
<li>创建子目录 src\main\java\org.openqa.selenium</li>
<li>在子目录下创建文件Selenium2Example.java， 内容如下
<pre lang="java">package org.openqa.selenium.example;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.WebDriverWait;

public class Selenium2Example  {
    static WebDriver driver ;

    public static void main(String[] args) {
        // Create a new instance of the Firefox driver
        // Notice that the remainder of the code relies on the interface,
        // not the implementation.
        driver = new FirefoxDriver();

        // And now use this to visit Google
        driver.get("http://www.google.com");
        // Alternatively the same thing can be done like this
        // driver.navigate().to("http://www.google.com");

        // Find the text input element by its name
        WebElement element = driver.findElement(By.name("q"));

        // Enter something to search for
        element.sendKeys("Cheese!");

        // Now submit the form. WebDriver will find the form for us from the element
        element.submit();

        // Check the title of the page
        System.out.println("Page title is: " + driver.getTitle());

        // Google's search is rendered dynamically with JavaScript.
        // Wait for the page to load, timeout after 10 seconds
        (new WebDriverWait(driver, 10)).until(new ExpectedCondition() {
            public Boolean apply(WebDriver d) {
                return d.getTitle().toLowerCase().startsWith("cheese!");
            }
        });

        // Should see: "cheese! - Google Search"
        System.out.println("Page title is: " + driver.getTitle());

        //Close the browser
        driver.quit();
    }
}</pre>
</li>
<li>在项目目录执行如下命令：<br />
mvn compile<br />
mvn exec:java -Dexec.mainClass=&#8221;org.openqa.selenium.example.Selenium2Example&#8221;</p>
<p>运行后就能看到一个firefox窗口被创建出来，自动访问google并搜索， 在console窗口中会看到title的输出</li>
</ol>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>https://doyj.com/2013/11/28/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
