Metadata-Version: 2.1
Name: autoparaselenium
Version: 0.1.4
Summary: UNKNOWN
Home-page: https://github.com/r2dev2/AutoParaSelenium
Author: Ronak Badhe
Author-email: ronak.badhe@gmail.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Requires-Dist: pytest (>=6.2.4)
Requires-Dist: pytest-parallel-39 (==0.1.0)
Requires-Dist: selenium (>=3.141.0)

# AutoParaSelenium

A library to make parallel selenium tests that automatically download and setup webdrivers

This is a WIP

## Usage

### Installation

```
pip install autoparaselenium
```

### Code

The API is very simple

```python
from autoparaselenium import configure, chrome, firefox, run_on, all_, Extension

# All parameters are optional, but still call it once before everything
configure(
    extensions=[
        Extension(chrome="path to chrome extension to install"),
        Extension(firefox="path to firefox extension to install"),
        Extension(chrome="chrome path", firefox="firefox path")
    ],
    headless=True, # if there are chrome extensions, chrome will not be headless as a selenium limitation
    selenium_dir="./drivers"
)

@run_on(all_)
def test_both_firefox_and_chrome(web):
    ...

@run_on(firefox)
def test_firefox_only(web):
    ...

@run_on(chrome)
def test_chrome_only(web):
    ...
```

### Running 

Use `pytest -n PROC` where `PROC` is the number of parallel threads


