All Projects → wgnet → Webium

wgnet / Webium

Licence: apache-2.0
Webium is a Page Object pattern implementation library for Python (http://martinfowler.com/bliki/PageObject.html). It allows you to extend WebElement class to your custom controls like Link, Button and group them as pages.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Webium

Htmlelements
Html Elements is a Java framework providing easy-to-use way of interaction with web-page elements in web-page tests.
Stars: ✭ 258 (+79.17%)
Mutual labels:  selenium, webdriver, selenium-webdriver
Golem
A complete test automation tool
Stars: ✭ 441 (+206.25%)
Mutual labels:  selenium, webdriver, selenium-webdriver
Atata
C#/.NET test automation framework for web
Stars: ✭ 362 (+151.39%)
Mutual labels:  selenium, webdriver, selenium-webdriver
page-modeller
⚙️ Browser DevTools extension for modelling web pages for automation.
Stars: ✭ 66 (-54.17%)
Mutual labels:  webdriver, selenium, selenium-webdriver
Java.webdriver
Browser test automation using Selenium WebDriver in Java
Stars: ✭ 135 (-6.25%)
Mutual labels:  selenium, webdriver, selenium-webdriver
atata-kendoui
A set of Atata components for Kendo UI
Stars: ✭ 17 (-88.19%)
Mutual labels:  webdriver, selenium, selenium-webdriver
Marionette
Selenium alternative for Crystal. Browser manipulation without the Java overhead.
Stars: ✭ 119 (-17.36%)
Mutual labels:  selenium, webdriver, selenium-webdriver
Cdp4j
cdp4j - Chrome DevTools Protocol for Java
Stars: ✭ 232 (+61.11%)
Mutual labels:  selenium, webdriver, selenium-webdriver
Marionette client
Mozilla's Gecko Marionette client in golang
Stars: ✭ 21 (-85.42%)
Mutual labels:  selenium, webdriver, selenium-webdriver
E2e Experiment
A demo project with Spring Boot / Angular application and e2e tests
Stars: ✭ 9 (-93.75%)
Mutual labels:  selenium, webdriver, selenium-webdriver
PWAF
Python Webdriver Automation Framework
Stars: ✭ 37 (-74.31%)
Mutual labels:  webdriver, selenium, selenium-webdriver
Cabbie
WebDriver for the masses
Stars: ✭ 70 (-51.39%)
Mutual labels:  selenium, webdriver, selenium-webdriver
spydriver
🕵️ Lightweight utility to intercept WebDriver and WebElement method calls.
Stars: ✭ 24 (-83.33%)
Mutual labels:  webdriver, selenium, selenium-webdriver
Csharp.webdriver
Browser test automation using Selenium WebDriver in C#
Stars: ✭ 115 (-20.14%)
Mutual labels:  selenium, webdriver, selenium-webdriver
google-meet-bot
Bot for scheduling and entering google meet sessions automatically
Stars: ✭ 33 (-77.08%)
Mutual labels:  webdriver, selenium, selenium-webdriver
Selenium Maven Template
A maven template for Selenium that will let you check out and go.
Stars: ✭ 403 (+179.86%)
Mutual labels:  selenium, webdriver, selenium-webdriver
Panther
A browser testing and web crawling library for PHP and Symfony
Stars: ✭ 2,480 (+1622.22%)
Mutual labels:  selenium, webdriver, selenium-webdriver
Steward
PHP libraries that makes Selenium WebDriver + PHPUnit functional testing easy and robust
Stars: ✭ 215 (+49.31%)
Mutual labels:  selenium, webdriver, selenium-webdriver
Php Webdriver
PHP client for Selenium/WebDriver protocol. Previously facebook/php-webdriver
Stars: ✭ 4,477 (+3009.03%)
Mutual labels:  selenium, webdriver, selenium-webdriver
Java.appium
Mobile test automation using Appium in Java
Stars: ✭ 59 (-59.03%)
Mutual labels:  selenium, webdriver, selenium-webdriver

Webium

PyPI Python Versions Build Status

Webium is a Page Object pattern implementation library for Python (http://martinfowler.com/bliki/PageObject.html).

It allows you to extend WebElement class to your custom controls like Link, Button and group them as pages.

Installation

The latest stable version is available on PyPI:

pip install webium

Usage

Main classes are:

  • webium.Find
  • webium.Finds
  • webium.BasePage

Basic usage example:

from selenium.webdriver.common.by import By
from selenium.webdriver.remote.webelement import WebElement
from webium.controls.link import Link
from webium.driver import get_driver
from webium import BasePage, Find, Finds


class GooglePage(BasePage):
    url = 'http://www.google.com'

    text_field = Find(by=By.NAME, value='q')
    button = Find(by=By.NAME, value='btnK')


class ResultItem(WebElement):
    link = Find(Link, By.XPATH, './/h3/a')


class ResultsPage(BasePage):
    stat = Find(by=By.ID, value='resultStats')
    results = Finds(ResultItem, By.XPATH, '//div/li')


if __name__ == '__main__':
    home_page = GooglePage()
    home_page.open()
    home_page.text_field.send_keys('Page Object')
    home_page.button.click()
    results_page = ResultsPage()
    print('Results summary: ' + results_page.stat.text)
    for item in results_page.results:
        print(item.link.text)
    get_driver().quit()

More usage details are available here: http://wgnet.github.io/webium/

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].