robo-appian
robo-appian provides reusable Appian-specific UI components and interaction utilities. Generic Playwright resource ownership, wrappers, and pytest fixtures live in robo-automation.
Architecture
Consumer / CORE application code
↓
robo-appian AppianPage / AppianLocator / components
↓
robo-automation generic resource lifecycle
↓
Appian
For Appian consumers, robo-appian provides AppianPage and AppianLocator. Both robo-automation and robo-appian are pytest plugins discovered through installed pytest11 entry points. The fixture layering is automatic:
robo-automation: generic page lifecycle
↓
robo-appian: appian_page -> AppianPage
↓
page -> AppianPage
No consumer wrapper-selector fixture is required. A normal Appian test simply requests page:
from robo_appian import AppianPage
def test_example(page: AppianPage) -> None:
page.textbox(label="Request Name").fill("Example Request")
page.button(name="Submit").click()
A consuming application such as CORE may override only the public page fixture to add application-specific navigation/login while depending on appian_page; generic resource creation and cleanup remain owned by robo-automation.
Install
pip install robo-appian
Python 3.12 is required. The package depends on robo-automation for generic automation lifecycle support.
Install Playwright-managed browser binaries with the robo-appian CLI:
robo-appian install-browser
robo-appian install-browser firefox
robo-appian install-browser chromium
robo-appian install-browser webkit
robo-appian install-browser all is equivalent to the no-argument full install. The command uses the current Python interpreter (sys.executable -m playwright install ...) and is platform independent.
Component APIs and Scope
The preferred Appian-facing API uses AppianPage, AppianLocator, and AppianScope. AppianScope is AppianPage | AppianLocator; use AppianPage for page-wide operations and AppianLocator only when a dialog or subtree must constrain the search.
AppianButton, AppianTextbox, and AppianDate are implemented inside robo_appian.appian and are created through page.button(name="..."), page.textbox(...), and page.date(...). The legacy component APIs remain compatibility surfaces while fluent Appian components are the preferred consumer model.
Documentation
Full documentation and component API reference:
https://dinilmithra.github.io/robo-appian/
Developer
Dinil Mithra — developer and maintainer of robo-appian.
- Repository: https://github.com/dinilmithra/robo-appian
- Issues: https://github.com/dinilmithra/robo-appian/issues
License
robo-appian is licensed under the MIT License. Copyright (c) 2026 Dinil Mithra.
Metadata
Release files for robo-appian 0.1.19
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| robo_appian-0.1.19.tar.gz | 36.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| robo_appian-0.1.19-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 86.0 kB
Release files / robo_appian-0.1.19.tar.gz
| Download URL | robo_appian-0.1.19.tar.gz |
|---|---|
| Size | 36.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c5d397735a8a58d9b559d86ca09542349627fc7c89b13b6ec0b90d109987c82e
|
|
BLAKE2b-256 checksum How to use checksums |
d7562334692adbe059c92adc1c9b42c5e6d05be378ccff295f1f4fddfc657f8c
|
| 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.19-py3-none-any.whl
| Download URL | robo_appian-0.1.19-py3-none-any.whl |
|---|---|
| Size | 50.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e76d075f7c841f585e0718e98fa7f908922103b02cb3a69b00a6a0f8cfb48677
|
|
BLAKE2b-256 checksum How to use checksums |
8223dd1e82161b767f8635d90e82bab499558c4bd84c7e70d9e439ce94b83eed
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.5.1 CPython/3.12.0 Windows/11
|