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 uses pytest as its recommended test engine. Arjuna also provides its markup for some common use cases on top of pytest. If you like, you can make use of Arjuna with any other test engine or custom frameworks as well.

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.

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

You can find the example code in arjex project.

Features

  1. Arjuna provides the concept of a test project with a fixed project structure, which gives consistency across implementations as well many re-usable features.
  2. Arjuna provides a comprehensive and intuitive Command Line Interface.
  3. You can easily define a test as a test function.
  4. You can take care of setup and cleanup before and after tests as test fixtures 3 levels - test, module and session. These test fixtures can be coded centrally so that they become available to all tests.
  5. Arjuna provides very comprehensive and advanced features for Test Configuration.
  6. You can do data driven testing with a multitude of easy to use and powerful constructs to create data sources in Arjuna:
  7. You can create Contextual Data References to pull data based on a context string.
    • Currently Excel format is supported.
    • Arjuna provides the magic R function with a data reference query format to easily retrieve data reference values anywhere.
    • You can use data reference queries in Gui Namespace files to create dynamic identifiers.
  8. You can easily localize your strings anywhere in your test project.
  9. Arjuna has comprehenstive support for Web Gui Automation.
  10. Arjuna provides various helper classes, functions and enums to aid in test automation:
    • XmlNode and NodeLocator for XML parsing.
    • Formatter and Locator to define locators.
  11. Various custom Arjuna Exceptions are implemented to give you precise information about the issues that take place.

Arjex - The Arjuna Examples Project

The arjex project contains lots and lots of example code for using Arjuna features.

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.9.15.tar.gz (118.7 kB view details)

Uploaded Source

Built Distribution

arjuna-0.9.15-py3-none-any.whl (204.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: arjuna-0.9.15.tar.gz
  • Upload date:
  • Size: 118.7 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.9.15.tar.gz
Algorithm Hash digest
SHA256 987215d9501acdbcaab34f96a3dbd5ed7a608c89e9bda14a5cb2593a310b0918
MD5 5f9bd2209b0f118712c6f682396742f5
BLAKE2b-256 78d6398e1f3725e1dbe0f0833fb7b0023a97dd7f8add5b2b18f58fd94a0dedaf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: arjuna-0.9.15-py3-none-any.whl
  • Upload date:
  • Size: 204.4 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.9.15-py3-none-any.whl
Algorithm Hash digest
SHA256 2ca37115b4e414e25e0fad26fc10c92b1987b77945a15a741a910824e635894f
MD5 5529f3b106d36896d7d1f8f3438f4bab
BLAKE2b-256 2aee6bfe9bf857908a6613e61d54128ed31bf177a2032ed3e794d1504d32dcd6

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