Skip to main content

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

Metadata

Release files for smart-automation-utils 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for smart-automation-utils 0.2.0
File Size Uploaded Provenance
smart_automation_utils-0.2.0.tar.gz 14.4 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for smart-automation-utils 0.2.0
File Interpreter ABI Platform
smart_automation_utils-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 32.5 kB

Release files / smart_automation_utils-0.2.0.tar.gz

Download URL smart_automation_utils-0.2.0.tar.gz
Size 14.4 kB
Tags Source
SHA-256 checksum
How to use checksums
b5463c8202b3e1dac7793bf14d6f76c16dacc96df6da53edd1cc136d554d04bc
BLAKE2b-256 checksum
How to use checksums
25e58f951bd44762082796d62be0b8055682b8b3b71547ac87ae4ca68f954720
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release files / smart_automation_utils-0.2.0-py3-none-any.whl

Download URL smart_automation_utils-0.2.0-py3-none-any.whl
Size 18.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fee82ecb636797cbee49742e8d23d19395ea0f8c8de5d2154c9a53f5df68f36c
BLAKE2b-256 checksum
How to use checksums
8ca4332057de4d46943a4ea4d30978f9d1b1a434d4c5c273a1b7091cab538960
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Security for smart-automation-utils 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page