Quick starter – Web automation using Playwright

Playwright is a (relatively) new kid on the block, joining several others kids already on the block, that are the JavaScript based automation frameworks. I learnt about it from a mention on Twitter and thought to give it a whirl. This post is purely meant to be a sketchy guide on getting started with it … Continue reading Quick starter – Web automation using Playwright

Lessons learnt from a POC to automate Salesforce Lightning UI

My recent client work has been on testing a migration(data & business processes) to Salesforce CRM platform. As part of Test execution, I took the initiative to build a POC to exercise automation of Salesforce both by interacting with the Lightning UI and the APEX Salesforce API interface. This post is to share the hurdles … Continue reading Lessons learnt from a POC to automate Salesforce Lightning UI

Pen Testing reconnaissance 101 : Using NMap,Tor and ProxyChains

Learning objective : How can you perform reconnaissance on a remote target to check which ports are unsecured for possible exposure to network attacks? Step 1: Create or choose an off the shelf Network Port scanner. Based on my research and talking to more experienced peers in this space, I choose Nmap ( https://nmap.org/) , … Continue reading Pen Testing reconnaissance 101 : Using NMap,Tor and ProxyChains

Performing sorting on sub strings in Python 3.x using “key” parameter

sorted() and list.sort() are very useful inbuilt Python functions . They get even more powerful with the "key" parameter The key parameter basically allows us to call either another function or some logic, the outcome of which forms the basis of our sorting. The return value of the key parameter will be used to decide … Continue reading Performing sorting on sub strings in Python 3.x using “key” parameter

The flexi-ways of asserting with Cypress.io

  One the many joys of working with Cypress is the variety of support for various assertion methodologies. What is even more powerful is that they can be chained at the end of core Cypress API commands like cy.get Here are coupe of examples that I put into practice recently. JQuery based https://gist.github.com/sunjeet-khokhar/7f4affc12bc984161e826dd1c02ee435 2. BDD … Continue reading The flexi-ways of asserting with Cypress.io

Basic refactoring to use PageObjects with Appium (using .NET)

What is PageObject model(POM) ? POM is a technique to hide some of the details of interacting with Web & Mobile elements, so that writing tests and reading code is easier. Here is a good starter resource for understanding POM for Appium - https://blog.testproject.io/2017/07/16/page-object-model/ POM in action -  I want to use this blog post to … Continue reading Basic refactoring to use PageObjects with Appium (using .NET)

Real device testing with TestObject,Appium and C#

TestObject , an offering by Sauce Labs provides cloud testing service with real devices. I recently did a POC with TestObject using C# . The tests were run using NUnit. Step 1:  Sign up Sign up for a free TestObject account  Step 2:  Upload app Upload the .apk/.ipa file for app under test . I … Continue reading Real device testing with TestObject,Appium and C#

Fiddling with Appium Desktop – initial learning and gotchas

What is Appium Desktop ? Launched about an year ago, Appium desktop is a desktop app that provides a GUI to run the Appium server and (much more importantly) offers a GUI capability to inspect apps under test (locally and remotely) Through this post I will share my experience with Appium desktop installation and launch … Continue reading Fiddling with Appium Desktop – initial learning and gotchas