EuroPython 2017 Presentation Preview: Front-End Testing with Python

The Golden Age of Python


With a vibrant multi-million-user community, Python is currently the fourth most mentioned language on the TIOBE index. Originally conceived in 1989, Python enjoyed a modest user base until it exploded in the early 2000s, when Google adopted it as a major implementation language. Now a staple for many companies, Python has become the top language for coding education and technical interviews.

So, what are the factors that have made Python so popular?

  1. Python is simple. As an interpreted language, it emphasizes code readability (i.e. by using whitespace indentation to delimit code blocks, rather than curly braces or keywords), and has a syntax which allows programmers to express concepts in fewer lines of code than in languages such as C++ or Java.
  2. Python offers a wide variety of libraries that can bolster your capabilities. Below are some popular examples:
    • Zappa — A serverless framework for Python that allows microservices to be deployed in the cloud, in a fully-managed environment. It ultimately simplifies app architecture, easing setup, deployment, and management.
    • Sanic and uvloop — Sanic is a Python web framework written to increase programming speed by taking advantage of async/await syntax for defining asynchronous functions. Its companion library uvloop further bolsters programming speed with its ultra-fast drop-in replacement for asyncio’s default event loop.
    • asyncpg — This asynchronous database interface library has zero dependencies and vastly increases data exchange speed with PostgreSQL databases.
    • OpenAI gym — gym is a toolkit for developing and reinforcing machine learning algorithms. It consists of an open-source library with a collection of environments that can be used to test reinforcement learning algorithms, and a site and API that allows users to compare the performance of trained algorithms.
    • Madplotlib, Seaborn, and Bokeh — These powerful tools aid in data visualization and modeling.
  3. Python is a platform-agnostic language, meaning it can run on Microsoft Windows, Mac OS X, Linux, and a slew of other operating systems and devices. This versatility, obviously, broadens its audience and makes it easy to share code across platforms.
  4. Thanks to its longevity, Python boasts a huge quantity of third-party documentation– this means that anyone with a problem or question can quickly find the answer. This is the result of its large, supportive community coming together.

The EuroPython Conference

EuroPython 2002 was the first worldwide event organized by the Python community. Held in Belgium, the conference showcased the technology’s most prominent thought leaders, including its creator — Guido van Rossum. An immediate success, the event strengthened the Python community, offering insights and best practices for beginners and experts alike.

In 2004 the EuroPython Society was established as a non-profit, to provide a legal body for the organization. The conference has grown each year since its inception, expanding its scope to include Python web technologies, science, data science, numerics, high performance computing, robotics, networking, and more.

EuroPython 2017 will be held in Rimini, Italy on the week of July 9th, and will feature 184 speakers with a broad range of Python expertise. In addition to its keynote speakers, the conference offers numerous hands-on, interactive events, like trainings, sprints, Beginner’s Day, the Django Girls Workshop, as well as a social. If you’re looking to broaden your skill set, learn best practices, and connect with the Python community, there’s no better place than EuroPython.

Tim Babych Presents: “Front-End Testing with Python”

Tim Babych will present his EuroPython talk on Monday, July 10 at 2:00 PM.

Tim Babych is a Senior Software Engineer at Sphere Software, currently leading a team at BluVector ( ). His previous work experience includes GetGoing, edX, GoodBed, and DataRobot.

Tim has been working with Python for seven years — he appreciates the language for its clarity, and advocates for Javascript to adopt even more of its features. He has extensive experience with Django and Flask, working mostly with web, but is also curious about data science and presented “A Data Scientist’s Python Toolkit” at Polish PyCon.

Tim received his MS in mathematics and computer science from the National Technical University of Ukraine. He is passionate about AI, sociology, and history.

Titled “Front-End Testing with Python,” Tim’s talk will help you expedite your testing process with Selenium, an open source browser automation tool. You can use Selenium to control the browsers and make them open web pages, which quickly allows you to ensure your code is accurate and bug-free. Tim will cover Selenium best practices, showing how to pair it with Python libraries to automate your testing process.

What are the advantages of Selenium?

  1. It’s an open source, freeware, and portable tool.
  2. It supports numerous languages, including Python, Java, Java Script, C#, Perl, Ruby, Groovy, VB Script, and more.
  3. It supports all major operating systems: Windows, Macintosh, Linux, and Unix.
  4. It supports several browsers, including Internet Explorer, Chrome, Firefox, Opera, and Safari.
  5. You can use it for Android-, IPhone-, and Blackberry-based application testing.
  6. You can integrate it with ANT or Maven framework for source code compilation.
  7. You can integrate it with TestNG testing framework for testing applications and generating reports.
  8. You can integrate it with Hudson or Jenkins for continuous integration.
  9. You can integrate it with other open source tools to support other features.
  10. It reduces CPU and RAM consumption for script execution.
  11. It comes with different component to provide support to its parent which is Selenium IDE, Selenium Grid and Selenium Remote Control (RC).

Additionally, Tim will cover the Needle tool. When you need to change the CSS presentation layer of the website, the Needle tool creates screenshots that allow you to easily compare the website before and after your changes. This way, you can quickly test not only functionality, but also the look and feel of the website.

At the conclusion of Tim’s presentation, you will have all the tools and best practices you need to expedite your testing process.