Theme images by Storman. Powered by Blogger.

Software Testing

[best practices][feat1]






Most Recent

Random Posts




Saturday, November 17, 2018

The Next Generation IDE - Selenium IDE 4 is officially released.

- No comments

I was thinking for few days on writing a blog but was not quite sure about what should I write about. And then I came to know a happy news which could also make a lot of other test engineers also happy. Well let me tell you what it is all about. 

As you all may know, back in August Selenium has officially announced the deprecation of Selenium IDE. If we talk about the user statistics, Selenium IDE was having: 
  • 3,000,000+ downloads 
  • 150,000+ weekly users
  • 1000+ daily installations
For those who don't know about the selenium IDE, It is an open-source record-playback tool for the web. The IDE was utilized by many test automation experts around the globe, and then they don't had any proper tool to get help with. I was also a bit sad about this since I was depending on this tool for finding custom locators, but for me it turn around well because then I learned to write locators without depending on any tool. Well that's my case, but there might be a lot of other test engineers who still find it very hard. 

 But now it's back with new look and pretty cool features. Selenium IDE has now got a pretty good upgrade and Simon Stewart, Selenium Project Lead and Creator of WebDriver, revealed the new Selenium IDE in a special live session, including capabilities, features, and roadmap. They call it Selenium IDE 4.0 which also will be a great supporting factor for the Selenium Webdriver ver 4.0 which is in beta stage. 

Selenium IDE 4 also known as Selenium IDE TNG will be a web extension and it is standardized with the W3C and hence it could be run in any browsers compared to the old version. The UI still remains somewhat similar to what we had before. Also they have made some great improvisations in terms of locators and better support for common tasks. 

For continuous integration purpose they have also implemented a new selenium ide runner which is a command line tool which is great for parallel executions, grid executions and can also be configured through capabilities. 

You can install the runner by simply running the following command:

npm install -g selenium- side-runner 


yarn global add selenium- side-runner

And another great feature is the usage of control flow. Earlier we were not able to use the control flow statement/conditions like if loop, while loops etc. Now you can use condition based statemets in the selenium ide for getting things done more efficiently. 

Another key feature which we need to mention is the usage of fallback locators. Now when you record it will also save about 5 different other locators that will be in action id any fallback condition is happening. That means if you find you page changing frequently with new id's or attributes, u need not worry because any of the other locators can be used. I am sure that these features are gonna give a better stability to our tests. 

You can also create custom plugins for adding new commands, locators, control set up and tear down etc, which is another cool feature. You can have a look on the wiki to know more about how to do execute it effectively. It is really well explained there. 

Their roadmap also include pretty cool features like Exporting tests to programming languages, Empowered data driven testing etc. 

You can download the latest version of Selenium IDE by clicking these link: 

Useful Links
Happy Testing, Stay tuned!

Monday, March 26, 2018

Now 'Kali Linux' can be run in your Windows 10 Machine - Yes you heard it right!

- No comments

how to install kali linux on windows

Penetration Testers and Security Specialists mushbe very familar with Kali Linux. It is one of the few hacking focused Linux distribution. So people with hardly any knowledge of Linux or anything related to computer security are now trying to use Kali as their main Linux distribution. Let me first give you all a very short introduction about Kali Linux!

What is Kali Linux?

Kali Linux is a “Penetration Testing and Ethical Hacking Linux Distribution”. Simply said, it’s a Linux distribution packed with security-related tools and targeted toward network and computer security experts. A Linux Distribution is nothing more than a bundle containing the Linux kernel, a set of core utilities and applications and some default settings. So, Kali Linux does not offer something unique in that sense most of the provided tools could be installed on any Linux distribution. 

Well but this was a disappointing factor to those who only use Windows as their OS. Here is the happy news for those guys! The wait is over :) 

Now you can download and install Kali Linux directly from the Microsoft App Store on Windows 10 just like any other application.

I know it sounds a little crazy, but it's true! Let me explain how. 

Kali Linux is the latest Linux distribution to be made available on the Windows App Store for one-click installation, joining the list of other popular distribution such as Ubuntu, OpenSUSE and SUSE Enterprise Linux.

This announcement is super exciting for penetration testers and security professionals who have limited toolsets due to enterprise compliance standards.

In Windows 10, Microsoft has provided a feature called "Windows Subsystem for Linux" (WSL) that allows users to run Linux applications directly on Windows.

For the past few weeks, we've been working with the Microsoft WSL team to get Kali Linux introduced into the Microsoft App Store as an official WSL distribution, and today we're happy to announce the availability of the 'Kali Linux' Windows application," Kali Linux said while announcing the news.

How to download and run Kali Linux on Windows 10 ?

Are you aware of the feature called WSL in windows ? If this is your first time using Windows Subsystem for Linux (WSL), you need to enable this optional Windows feature before getting the Kali Linux app.

Follow these simple steps to enable WSL:
  1. Navigate to Control Panel and go to "Apps and features"
  2. Select "Programs and Features" from the right panel
  3. Click the "Turn Windows features on or off" from the left menu
  4. Select the "Windows Subsystem for Linux" and save it
  5. Reboot your system

You can even do the same by opening PowerShell as Administrator and running the following command and restart your computer.
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Now search for Kali Linux on Windows Store, download it with just a single click. Once you launch the application, it automatically completes Kali installation and will open the console window.

That's it! You can also check Kali Linux documentation for more information.

Kali Linux on Windows does not come with any hacking or penetration testing tools pre-installed, but you can easily install them later. Kindly note that your Antivirus application or Windows defender can trigger false-positive warning for hacking tools and exploits, but you need not worry about it. Add them to your safe list and start exploring it now!

Happy testing!

Thursday, March 22, 2018

How to choose the Best Programming language for Test Automation with Selenium

- No comments

Quite a few weeks, back, I got a question from one of my contacts in linkedin. 

So I just thought of writing this blog post to give an overview of the programming languages that every beginner should prefer while it comes to learn Selenium. Actually speaking, I would say the language doesn’t matter at all. 89% of the concepts you learn in one language can be applied to any other language. First select any language that you are comfirtable with, roll up your sleeves, and jump in. That's it :)

In Dima Kovalenko’s book Selenium Design Patterns and Best Practices, he discusses how the common Selenium command sendkeys translates in most of the other major Selenium Language bindings. Check out the example below:

This uniformity between the different Selenium language bindings applies to most of the commands in the Selenium API. So, it's really easy to transfer your knowledge of one programming language approach to another using Selenium without much effort. 

Well I can also give some tips as follows for selecting the language for test automation.

♦ The community for the specific programming language of your automation framework. ie. if you use selenium webdriver, Language support of JAVA is %68, JS %15, Python %11, %5 Ruby, %1 C# [Reference: Dave Haeffner’s SauceLabs Event Presentation].

♦ You should check which version is stable and get the updates first. For selenium, I think the JAVA bindings are getting updated at first.

♦ You should check the availability of the language support in StackOverflow.

♦ Visual Test Automation support.

♦ You should consider your competency of Programming Language which will be used in automation project.

♦ You should consider Test Runner frameworks and their capabilities such as JUnit, TestNG, NUnit, MBUnit, etc.

♦ You should consider how you can run your tests in parallel without any pain.

♦ You should consider your product/organisation programming language. In this way, you will get help from developers. If they write unit tests, that will be great! :slight_smile:

♦ Also consider the API Testing libraries of that programming language.

♦ Now-a-days BDD is a much used concept and hence the BDD support of that language should be considered.

♦ I personally feel that if you have never programmed before, it would be best to start by using a script-friendly language like Python or Ruby. Using a scripting language allows you to learn to write Selenium tests with the least amount of code in the shortest amount of time.

My final answer/recommendation:

So, to recap: What language should you use to learn Selenium?

The answer is that there is no such specific answer — but I really hope this article would help you narrow down, which language is right for your personal situation.

And may be you should consider many more items to select a programming language for test automation. If you have any feedback, please share with me in the comment section below.

Happy Testing!