Skip to main content

robo-appian

robo-appian makes Appian pages easier to automate with readable Python.

It is designed for people who know their web application and only need basic Python to start writing automation.

Quick example

from robo_appian import AppianPage


def test_create_request(page: AppianPage) -> None:
    page.textbox(label="Request Name").fill("Example Request")
    page.date(label="Required Award Date").fill("10/15/2026")
    page.checkbox(label="Is this request for a conference?").select("Yes")
    page.button(name="Submit").click()

The goal is to describe the page using the same text a user sees.

Install

pip install robo-appian
robo-appian install-browser firefox

Python 3.12 is required. robo-appian uses robo-automation for generic browser and pytest infrastructure.

Common controls

page.textbox(label="Request Name").fill("Example Request")
page.textbox(placeholder="example@example.com").fill("user@example.com")
page.date(label="Required Award Date").fill("10/15/2026")
page.checkbox(label="Is this request for a conference?").select("Yes")
page.button(name="Next").click()

Textboxes, dates, and selection components automatically move focus out after a value changes so Appian can process it.

What belongs where?

Your application tests
        ↓
robo-appian       Appian controls and Appian behavior
        ↓
robo-automation   Browser and pytest infrastructure
        ↓
Playwright

Your application project should own application URLs, login policy, business workflows, assertions, and test data.

Documentation

Start with the beginner guides:

  • Installation
  • Quick Start
  • Your First Test
  • Choosing a Component
  • Troubleshooting

Advanced architecture and pytest integration are documented separately for framework maintainers.

Full documentation:

https://dinilmithra.github.io/robo-appian/

License

robo-appian is licensed under the MIT License.

Error handling

Appian-specific library failures use RoboAppianError, which is also a RoboAutomationError. Normal tests should usually let pytest report these errors. If you need recovery or diagnostic handling, see How to use RoboAppianError for examples using code, details, to_dict(), and exception chaining.

Metadata

Release files for robo-appian 0.1.20

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

Source distribution (sdist)

Source distribution for robo-appian 0.1.20
File Size Uploaded
robo_appian-0.1.20.tar.gz 37.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for robo-appian 0.1.20
File Interpreter ABI Platform
robo_appian-0.1.20-py3-none-any.whl Python 3 none any Details

Total release size: 90.8 kB

Release files / robo_appian-0.1.20.tar.gz

Download URL robo_appian-0.1.20.tar.gz
Size 37.7 kB
Tags Source
SHA-256 checksum
How to use checksums
5ebb86ae45553f350ca713caf91f92d19146e545ea60527cffe25fe2aa8061eb
BLAKE2b-256 checksum
How to use checksums
8dd7059b9e06fb1ba3a6c13994762049f0928d1abefa534dbd3616cb6d959ea5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.5.1 CPython/3.12.0 Windows/11

Release files / robo_appian-0.1.20-py3-none-any.whl

Download URL robo_appian-0.1.20-py3-none-any.whl
Size 53.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
629867645455024b2d58e65a1b65dd095f6ef15e3f03bda58dd3f34e1e05a9f0
BLAKE2b-256 checksum
How to use checksums
7c43079fd571717b8cbcaf20bf8a6cdaf900cee52ad09ff1dca2eaf980abf005
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.5.1 CPython/3.12.0 Windows/11
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