location_city Portland, OR schedule Sep 9th 03:30 - 04:15 PM place Grand Ballroom 1

WebDriver API is designed to be abstract enough. That is why it usually needs exdending when it comes to using Selenium in practice. If using API out of the box it leads to code duplicates and finding solutions for similar goals every time since it privides only basic classes such as WebDriver or WebElement. Webium library helps you to extend Web Driver API to whatever deep UI object structure you need. You can describe basic UI elements (e.g. Link, Button, Input), construct more complex elements from smaller parts and eventually put them all into your Page Objects. Webium is free and open-source. In my talk I'll explain how to use it efficiently in case you use or are going to use Python + Selenium for writing tests.



Outline/Structure of the Talk

  • Prehistory
  • Requirements
  • Alternatives
    • Robot Framework Page Objects
    • holmium.core
    • wtframework
  • What is about Webium?
  • BasePage
  • Find
  • BasePage - Usage Example
  • UI controls - Extending WebElement
  • UI controls - Usage Example
  • Finds
  • Finds - Usage Example
  • Containers
  • Logical Containers
  • is_element_present
  • Dynamic Web Pages
  • Settings
    • implicitly_wait
    • How to manage WebDriver instance
  • Questions?

Learning Outcome

  • Webium - what it is?
  • What are advantages and alternatives to using Webium
  • How to use Webium:
    • How to describe Page Objects
    • How to build custom UI controls
    • How to use containers
    • How to work with dynamic web pages
    • What are settigns and how to customize Webium


Target Audience

QA, Test Automation or Software Engineers in Test



schedule Submitted 6 years ago

Public Feedback

    • Andrei Solntsev

      Andrei Solntsev - Selenide: Concise UI Tests in Java

      45 Mins

      Selenium WebDriver is a great tool, but it's not a testing library. It's a browser manipulation tool. There is a gap. 

      Selenide adds a possibility for easy and stable testing.


      Why yet another Selenium wrapper?

      There are several testing libraries around Selenium webdriver. But it seems that they do not resolve the main problems of UI tests. Namely, instability of tests caused by dynamic content, JavaScript, Ajax, timeouts etc. Selenide was created to resolve these problems. With Selenide, you can forget all these common timing issues and concentrate on business logic.