Skip to main content

A python package for automation developers working with Selenium and Appium

Project description

Smart Automation Utils v0.2.0

An Enterprise-grade Python framework for robust web and mobile automation. smart-automation-utils transforms standard Selenium/Appium into a stable, fluent, and highly observable automation engine.

🚀 Enterprise Features

  • Fluent API: Chain actions for readable and concise test scripts.
  • Flakiness Elimination: Built-in Waitless integration for intelligent UI stabilization.
  • Page Object Model (POM): Built-in BasePage and SmartDriver integration for scalable architecture.
  • Zero-Config Drivers: Automated driver management via webdriver-manager.
  • Glow Reporting: High-fidelity test diagnostics with pytest-glow-report.
  • Hybrid Support: Seamlessly switch between Web (Selenium) and Mobile (Appium).
  • Proactive Debugging: Automatic screenshots on failure + element highlighting.
  • Performance Intelligence: Integrated memory and execution time monitoring.

📦 Installation

pip install smart-automation-utils

🛠 Usage

Fluent & Professional API

from smart_automation import SmartDriver
from selenium.webdriver.common.by import By

# Zero-config initialization
driver = SmartDriver(browser="chrome", headless=True)

driver.get("https://www.dhirajdas.dev") \
      .click(By.XPATH, "//a[text()='Home']") \
      .send_keys(By.NAME, "search", "Automation") \
      .quit()

Page Object Model (POM)

from smart_automation import SmartDriver, BasePage
from selenium.webdriver.common.by import By

class LoginPage(BasePage):
    def login(self, user, pwd):
        return self.send_keys(By.ID, "user", user) \
                   .send_keys(By.ID, "pass", pwd) \
                   .click(By.ID, "login-btn")

driver = SmartDriver()
login_page = LoginPage(driver)
login_page.open().login("admin", "secret")

Performance & Data

from smart_automation import monitor, DataGenerator

monitor.start_timer("API_Sync")
email = DataGenerator.random_email()
# Perform actions...
monitor.stop_timer("API_Sync")
monitor.log_memory_usage()

📊 Reporting

We use pytest-glow-report for beautiful, data-rich execution summaries.

  1. Run Tests:
    pytest
    
  2. View Report: Open reports/report.html in your browser for a full visual breakdown of passes, failures, and execution timings.

⚙️ Configuration

Configure via config.json or SMART_AUTO_ environment variables.

{
    "browser": "chrome",
    "timeout": 15,
    "headless": true,
    "proxy": "localhost:8080"
}

Maintained by Dhiraj Das

Project details


Download files

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

Source Distribution

smart_automation_utils-0.2.0.tar.gz (14.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

smart_automation_utils-0.2.0-py3-none-any.whl (18.0 kB view details)

Uploaded Python 3

File details

Details for the file smart_automation_utils-0.2.0.tar.gz.

File metadata

  • Download URL: smart_automation_utils-0.2.0.tar.gz
  • Upload date:
  • Size: 14.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for smart_automation_utils-0.2.0.tar.gz
Algorithm Hash digest
SHA256 b5463c8202b3e1dac7793bf14d6f76c16dacc96df6da53edd1cc136d554d04bc
MD5 123c765fa92d42d09c8df251fd33f6b7
BLAKE2b-256 25e58f951bd44762082796d62be0b8055682b8b3b71547ac87ae4ca68f954720

See more details on using hashes here.

File details

Details for the file smart_automation_utils-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for smart_automation_utils-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fee82ecb636797cbee49742e8d23d19395ea0f8c8de5d2154c9a53f5df68f36c
MD5 45f4d55f51476460ea5e48e8a31a61e0
BLAKE2b-256 8ca4332057de4d46943a4ea4d30978f9d1b1a434d4c5c273a1b7091cab538960

See more details on using hashes here.

Supported by

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