We showed you how to run tests on BrowserStack using pytest in our previous post – pytest and Browserstack. We had an example test and ran it across one browser from the command line argument. What if we need to run it across different browser versions, platforms and platform versions? Why this post? pytest responds really well when we run […]
pytest: Cross browser, cross platform Selenium tests
Get started with SQLite and Python
There are times when we repurpose our automated checks to scrape information off the pages it visits. This can happen when you are using automation to explore a product, looking for patterns in client data, analyzing production data to spot patterns, etc. Storing the scraped data can be tricky. Approaches to storing the scraped data range between two extremes: a) […]
How to write CSS selectors
Why this post? Testers need to know multiple ways of locating an element in a webpage as different strategies have to be used based on the context since each has its own advantage. The Cascading Style Sheet(CSS) is defined to structure and style the HTML in the webpage. These CSS patterns can be used to uniquely identify elements in the […]
JavaScript evaluate() and XPaths
I recently used a neat solution that involved JavaScript evaluate() and XPaths as part of an automated GUI check. I am good with Python and writing XPaths for locators but not so good with JavaScript. I needed to locate an element in the DOM and then change a specific attribute. The solution was simple enough that I did not have […]
Connecting to BrowserStack from CircleCI containers
Problem: How do I connect to BrowserStack from CircleCI’s build containers? Why this post? A recent Qxf2 client was using CircleCI for their continuous integration and deployment needs. Partnering with our client, we had identified that it would be useful to run a minimal set of automated GUI tests as part of their continuous integration and deployment process. The GUI […]
Setup Python and Selenium tests on CircleCI
Problem: Many testers do not get a chance to explore CircleCI Why this post? CircleCI is powerful, fast and easy-to-use Continuous Integration and Deployment tool for web applications. CircleCI seems to be growing in popularity as a cloud based continuous integration and deployment tool. Due to a variety of reasons, many testers do not get the opportunity to explore and […]
Selenium & HTML5 canvas: Verify what was drawn
Problem: How do you verify what was drawn on a canvas element using Selenium? Why this post? The HTML5 canvas element is opaque to Selenium and does not lend itself well to GUI automation. An application I was testing had an HTML5 canvas element that users could interact with. Users could place pre-defined objects upon the canvas element and then […]
Selenium tutorial for beginners
We recently presented a Selenium tutorial aimed at beginners. Avinash Shetty of Qxf2 Services presented the tutorial as part of the Mangaluru Software Testing group meetup at Mangalore Infotech’s spacious office. Several members who attended the meetup found the talk and examples useful. So we thought we would share the material on our blog too. You can practice your Selenium […]
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 […]
Xvfb plugin for Jenkins
Problem: Error while running Selenium tests via Jenkins on a Ubuntu machine. WebDriverException(“The browser appears to have exited ” selenium.common.exceptions.WebDriverException: Message: The browser appears to have exited before we could connect. If you specified a log_file in the FirefoxBinary constructor, check it for details. Why this post? We faced this issue when we were trying to run our Selenium tests […]