We have been hard at work integrating our Python based GUI automation framework (that uses the Page Object pattern) with a test case management tool for reporting purposes. In this post we will show you how to report the results of your automated checks to a visual test case management tool – TestRail. TestRail offers a free trial – so […]
Reporting automation results to TestRail using Python
Don’t hardcode usernames and passwords in your test scripts
If your application needs to authenticate users, you need some way for your automation to know your credentials. You may be providing these credentials in the test script itself. But this could lead to a possible breach of security. E.g: We learnt that BrowserStack keeps logs of every line of code executed. So if you had hard coded your username […]
Page Object Model (Selenium, Python)
We have come a long way since our post on implementing the Page Object Model –Implementing the Page Object Model (Selenium + Python) While the above post is useful and we rank high on Google, we routinely hear two criticisms of it: a) the post is too high level b) the application being tested is not very repeatable So we […]
Performance Testing using Gatling
Problem: Common misconception that load testing is difficult. Many testers think performance testing is tough. One of the common reason for it is the lack of knowledge of any performance testing tool. In this tutorial we will learn about Gatling which is an open source load testing framework based on Scala, Akka and Netty and arm our self for load […]
Python and Appium: Scroll through search result table
In this post we show you how to scroll through a table and identify elements. We also tackle the case where the table spans multiple pages. This is a natural and common workflow on most mobile devices. A typical use case involves the user performing a search within a mobile application. The app returns a table of results. The user […]
Android and Appium: Press Enter on the soft keyboard
Problem: Use Appium and press ‘Enter’ on the soft keyboard. This post continues our series on intermediate level problems when automating mobile application tests using Appium. We thought of sending a KeyEvent to an input (textbox) element using Appium. Superficially this appears to be trivial, but while writing the script, figured out otherwise. To our surprise, it failed. And there […]
API Testing with Python Mechanize
This is the third part in our series on API testing. Rather than focus on traditional approaches to API testing, we have decided to arm you with tools that let you interact with the API at different levels of abstractions. In part I we showed you how to inspect the API calls of any web application. In part II, we […]
What is NAF ?
UIAutomatorViewer is a tool to inspect and identify UI elements in Android apps. However not every UI element you see is accessible to UIAutomatorViewer. Sigh. I know. That sucks. But at the very least, UIAutomatorViewer lets you know which of these elements are not accessible. I was messing around with Appium and DroidFish secretly hoping to write an automated test […]
appWaitActivity: A new session could not be created
While exploring Appium with mobile devices I hit the following error WebDriverException: Message: u’A new session could not be created. (Original error: atpwta.live/.activity.Main never started. Current: atpwta.live/.activity.root.TournamentList)’ Initially, I had set desired capabilities to: desired_caps[’platformName’] = ‘Android’ desired_caps[’platformVersion’] = ‘4.4’ desired_caps[’deviceName’] = ‘Moto E’ desired_caps[’appPackage’] = ‘atpwta.live’ desired_caps[’appActivity’] = ‘.activity.Main’desired_caps[‘platformName’] = ‘Android’ desired_caps[‘platformVersion’] = ‘4.4’ desired_caps[‘deviceName’] = ‘Moto E’ desired_caps[‘appPackage’] […]
Implementing the Page Object Model (Selenium + Python)
UPDATE: We are retiring this post in favor of a newer post: Page Object Model (Selenium, Python) Please refer to the newer post. It has a more detailed architectural breakdown, provides many more code snippets and write an automated test for a very relatable application – Gmail. You could also visit our open-sourced Python + Selenium test automation framework based […]