Skip to main content

Arjuna is a Python based test automation framework developed by Rahul Verma (www.rahulverma.net).

Project description

Arjuna

Arjuna is a Python based test automation framework developed by Rahul Verma (www.rahulverma.net). Rahul has implemented smaller variants of features in Arjuna across frameworks and organizations, or given advise around it. However Arjuna being a generic library has the most complete implementation of his ideas, away from project specific contexts and constraints.

Arjuna provides its test engine features and markup on top of pytest (https://docs.pytest.org/en/latest/).

You'd need Python 3.5+ to make use of Arjuna.

Note: On Linux, the built-in Python3 build has issues with the Python's built-in enum module which is heavily used in Arjuna. One alternative is to install ActiveState Python on linux. Advanced users can go for installing a custom Python build.

Tutorial

1. Arjuna Installation

  1. Download and install latest Python (3.5+) from https://python.org
    • If you are insterested to learn python Following are links for tutorials and docs.
  2. Confirm the python version installed by running the command python --version. If expected version in not shown, fix this by looking into PATH variables and/or to see whether you have multiple versions of Python installed.
  3. Install Arjuna using the following command
    • pip install arjuna

2. Arjuna's Core Features

You can find the example code used on this section in arjuna_core_features project.

  1. Project Structure
  2. Writing Your First Test
  3. Value Abstraction
  4. Configuration
  5. Data Driven Testing

3. Basic Web UI Automation

You can find the example code used on this section in arjuna_webui_basics project.

  1. Getting Started with WebApp
  2. GuiElement - Identification and Interactions
  3. Creating Reusable Module
  4. GuiMultiElement
  5. Dropdown and RadioGroup

4. Advanced Web UI Automation

  1. Finding Nested Elements
  2. Alternative and Dynamic Identifiers
  3. Executing JavaScript
  4. Alerts, Windows, Frames
  5. Configuraing Interactions with GuiInteractionConfig
  6. Handling Custom DropDowns
  7. Retrieving Source code with GuiSource

5. Gui Abstraction - GNS, App, Page, Widget and Gui Elements

The following tutorial sub-sections have multiple example projects corresponding to them. Please refer the pages for respective example projects.

  1. Gui Namespace (GNS) - Externalized Identifiers
  2. Creating App Class
  3. Gui and Its Loading Model in Arjuna
  4. App Object Model
  5. App-Page Object Model
  6. App-Page-Widget Object Model

Reference

  1. Command Line Options

Miscellaneous

  1. Using Arjuna With Your Test Framework

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arjuna-0.8.14.tar.gz (103.0 kB view details)

Uploaded Source

Built Distribution

arjuna-0.8.14-py3-none-any.whl (188.3 kB view details)

Uploaded Python 3

File details

Details for the file arjuna-0.8.14.tar.gz.

File metadata

  • Download URL: arjuna-0.8.14.tar.gz
  • Upload date:
  • Size: 103.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.5

File hashes

Hashes for arjuna-0.8.14.tar.gz
Algorithm Hash digest
SHA256 499db1bde075b0a8dbd2a5b22f8fb415b8f54f34208725df876fcdbd2e795901
MD5 2d601071c6360c48adc358bfac14e0f3
BLAKE2b-256 7487cac61be84929d9ee5643e6f9381d7cc5d22c0b1d69cd9cba03e3c3ad90d7

See more details on using hashes here.

File details

Details for the file arjuna-0.8.14-py3-none-any.whl.

File metadata

  • Download URL: arjuna-0.8.14-py3-none-any.whl
  • Upload date:
  • Size: 188.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.5

File hashes

Hashes for arjuna-0.8.14-py3-none-any.whl
Algorithm Hash digest
SHA256 78b8daec1435b76f9ea2aa527d914598bc11ac024dec864e1a8620c965fe85e8
MD5 a04719564c4ee2488a7d348f51ee0bf0
BLAKE2b-256 29a251c5461496b09e206ef1bdbda844eed75f9cd782eda1ca1ed393cbde1f06

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page