- Details
- Written by: Stanko Milosev
- Category: Selenium
- Hits: 33474
To create my first test in Selenium, I was using this web site.
Download and install Eclipse, download Chrome driver, download and install Maven.
To install Maven, in my case, I downloaded apache-maven-3.2.2-bin.zip, and I extracted it to C:\opt\maven. After that on the keyboard click Windows sign + Pause, system properties should open, and click Advanced Settings. On Windows 7 it looks like this:

System properties window should pop - up, click on Advanced -> Environment Variables:

Environment Variables should pop - up. First I had to add M2_HOME variable with the value C:\opt\maven into system variables, because with user variables didn't work, I don't know why:

Then in user variables click new:

Add the M2 environment variable in the user variables with the value %M2_HOME%\bin

Add / update path variable, by adding %M2%:

Make sure that Java_Home exists:

After adding all those variables, I had to restart my computer, then to check if everything is correctly set in command line write
echo %M2_HOME%
result should be (in my case):
C:\opt\maven
Now we can check if Maven is installed by writing in command line:
mvn --version
Result should be something like:
Apache Maven 3.2.2 (45f7c06d68e745d05611f7fd14efb6594181933e; 2014-06-17T15:51:42+02:00)
Maven home: C:\opt\maven
Java version: 1.7.0_45, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk1.7.0_45\jre
Default locale: en_US, platform encoding: Cp1250
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"
To start with Maven, create folder for example d:\com.milosev.app, open command line in that folder, execute:
mvn archetype:generate -DgroupId=com.milosev.app -DartifactId=my-firstTest -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
Now your folder structure should look like:

Open Eclipse, go to Help -> Install New Software:

Then, in my case, I've choose Work with: Luna - http://download.eclipse.org/releases/Luna, filtered by maven, and check Collaboration m2e...:

Click Next -> Next -> Accept license agreement -> Finish, wait to install software, restart Eclipse.
Go to File -> Import

Then choose Existing Maven Projects

Click Browse go to folder where is your project (in my case that is d:\com.milosev.app), click ok -> Finish.
Open pom.xml, since I am unexpirienced Eclipse user I open it with Text Editor:

It should look like:
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.mycompany.app</groupId> <artifactId>my-app</artifactId> <packaging>jar</packaging> <version>1.0-SNAPSHOT</version> <name>my-app</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>2.40.0</version> </dependency> </dependencies> </project>
Basically you will need to add just:
<dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>2.40.0</version> </dependency>
After saving, Maven Dependencies should be populated, in my case it looks something like:

Now, open my-firstTest -> src/test/java -> com.milosev.app -> AppTest.java, right click on com.milosev.app -> New -> Class

Give the name like openChrome

Open your new file, in my case openChrome.java, and write something like:
package com.milosev.app;
import junit.framework.TestCase;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class openChrome
extends TestCase
{
WebDriver driver;
@Test
public void testDevice_183_102_1152921504606846975() throws InterruptedException {
System.setProperty("webdriver.chrome.driver", "C:\\Users\\myUserName\\Downloads\\chromedriver_win32\\chromedriver.exe");
driver = new ChromeDriver();
driver.get("http://www.google.com");
assertTrue(true);
}
}
Part C:\\Users\\myUserName\\Downloads\\chromedriver_win32\\chromedriver.exe change with path where you downloaded your chromedriver.
After adding the code, there is possibility that @Test will be underlined with red color, which means that it is not recognized. In that case go with mouse over @Test, wait for drop down window, and click on "Add JUnit 4 library to the building path":

Click F11, and magic should happen.
Example project you can download from here, but be aware that this is my very first project made in Selenium / Java.
- Details
- Written by: Stanko Milosev
- Category: Jetty
- Hits: 5277
To start simple Jetty server with Maven, download and install Maven, after that create and import project (in my case I created project in C:\Users\myUserName\Documents\myJetty\my-firstJettyTest) as I already explained here. Open pom.xml, and it should look like:
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>myJetty</groupId>
<artifactId>my-firstJettyTest</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>my-firstJettyTest</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-websocket</artifactId>
<version>8.1.12.v20130726</version>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-server</artifactId>
<version>8.1.12.v20130726</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>8.1.11.v20130520</version>
<configuration>
<scanIntervalSeconds>10</scanIntervalSeconds>
<stopPort>8005</stopPort>
<stopKey>STOP</stopKey>
<contextPath>/</contextPath>
</configuration>
<executions>
<execution>
<id>start-jetty</id>
<phase>pre-integration-test</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<scanIntervalSeconds>0</scanIntervalSeconds>
<daemon>true</daemon>
</configuration>
</execution>
<execution>
<id>stop-jetty</id>
<phase>post-integration-test</phase>
<goals>
<goal>stop</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Then open command line in same folder where your project is, and you can execute:
mvn jetty:run
After that in your browser write something like: 127.0.0.1:8080 - Jetty by default starts on port 8080
In my case, I have created one index.html file and I place it here:
C:\Users\myUserName\Documents\myJetty\my-firstJettyTest\src\main\webapp