lfryc / arquillian-graphene

Type safe Selenium

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Welcome to Arquillian Graphene - Testing Ajax with flavour of sexy type-safe API

Graphene project is designed as enhancement of Selenium project focused on rapid development andusability in Java environment.

  • API is straightforward and enforces tester to write Ajax-enabled tests,
  • internals enables JQuery location strategy, which improves performance of the tests,
  • brings concepts for on-the-fly injection of own selenium extensions and also extensions to page code (enabling advanced testing features)
  • allows command interception and request interception,
  • it brings type-safe equivalent of Selenium version 1.x, enabling auto-completion and rapid development style,
  • integrates with Arquillian using Arquillian Drone extension.

With all the concepts above, Graphene brings new power to space of enterprise Java-based testing.

Project Info

License: LGPL v2.1, ASL v2.0 (dual-licensed)
Build: Maven
Documentation: https://docs.jboss.org/author/display/ARQGRA
Issue tracker: https://issues.jboss.org/browse/ARQGRA

Getting Started

Adding Maven Dependency

To use Graphene, add following dependencies to your project.

It will allow you to use Graphene with JUnit integration, in Standalone mode (check documentation for other modes and framework integrations):

<!-- JUnit -->
<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.8.2</version>
    <scope>test</scope>
</dependency>
 
<!-- Arquillian JUnit Standalone -->
<dependency>
    <groupId>org.jboss.arquillian.junit</groupId>
    <artifactId>arquillian-junit-standalone</artifactId>
    <version>1.0.0.Final</version>
    <scope>test</scope>
</dependency>
 
<!-- Graphene dependency chain - imports all other dependencies required -->
<dependency>
    <groupId>org.jboss.arquillian.graphene</groupId>
    <artifactId>arquillian-graphene</artifactId>
    <version>1.0.0.Final</version>
    <type>pom</type>
    <scope>test</scope>
</dependency>

Adding the Java test

To start with Graphene from beloved Java, you can write similar code:

@RunWith(Arquillian.class)
public class BasicTestCase {

    URL url = URLUtils.buildUrl("http://www.google.com/");
    
    @Drone
    GrapheneSelenium browser;

    @Test
    public void testOpeningHomePage() {
        browser.open(url);
    }
}

For more knowledge about framework's strengths, let's look at Common API documentation.

For Developers

Prerequisities

  • JDK 1.6+
  • Maven 3.0.3+

How-to build project

mvn clean install

Running Integration Tests

mvn verify -Pftest

About

Type safe Selenium


Languages

Language:Java 85.8%Language:JavaScript 14.2%