Tag Archives: testing

Selenium Grid Using Docker

From quite a long time, we have been using selenium grid for parallel testing at Naukri. The purpose of using Selenium Grid is to reduce the total test execution time of an automation suite. This is achieved by running the automated test scripts in parallel on multiple machines. Refer to blog http://engineering.naukri.com/2015/10/parallel-testing-at-naukri/ for more insights on implementation of Selenium Grid for parallel testing at Naukri. Problem Statement: Although Selenium Grid has helped us in a significant manner over normal execution but every tool implementation comes with some... Read More

Verify Colour of Elements using Selenium WebDriver

QA folks need to do Regression Testing as part of their Job. Since doing Regression on daily/weekly basis is cumbersome, we automate the functional flows of our application and these are called FTs (Functional Tests). Apart from executing the FTs, we do manual testing mostly to validate the alignment, font size, colour etc. Since, manually verifying the colour of all controls/elements is a tedious and time-consuming job, we should automate it also. How? We can automate it by using Selenium Webdriver itself. For example, I am taking Java as a language of choice with Selenium... Read More

Web and Mobile Implicit Requirements

Requirement analysis is the first and foremost step for planning phase itself. Let us see what wiki says about requirement analysis Requirement analysis in systems engineering and software engineering, encompasses those tasks that go into determining the needs or conditions to meet for a new or altered product or project, taking account of the possibly conflicting requirements of the various stakeholders, analysing, documenting, validating and managing software or system requirements. What?? Hold on, it is very complicated and cumbersome!!  Let’s make it simple, Requirements are the... Read More

Android Parallel Automation

Android parallel automation Android Parallel Automation to increase Coverage Naukri has more than a lakh users using its Android application. These users are widely spread across multiple android devices with various combinations of android versions. We work hard to ensure that our application works well for our entire user base. Acknowledging that appium scripts are slow, it was a time taking task to execute a 10 hours long script on multiple devices, calculatedly taking around half a day in execution on single device and completely taking around two to three days on just 3 devices (in the best possible scenario). If... Read More

MAILER AUTOMATION THROUGH JAVAMAIL API

MAILER AUTOMATION THROUGH JAVAMAIL API “Discovering the unexpected is more important than confirming the known.” Owing to the large number of mails that are a part of the daily user interactions, it becomes imperative that the mails that reach the users are bug free. This system is developed as an initiative to continuously validate the mails that the end user is receiving for accuracy, without manually testing the mails each and every day. Problem Statement: In Naukri, automating mailers was considered unfruitful mainly due to the low ROI yielded when tackled with conventional... Read More

Peripheral Testing

If anyone has played basketball during their school or college time then they would have got the lessons from their coach about peripheral vision. Peripheral vision is important in the game as it allows you to: Confuse the guys from other teams by looking at one member of your team and passing the ball to another member. 2. It helped you to pass the ball, at the right time to the right person, who is free at that moment. 3. It also helped you to see if someone is approaching you in order to block you, or coming from your back side to take the ball from you. There are many other... Read More

How to Reduce Test Automation Flakiness

We all have heard the story of the Boy Who Cried Wolf, let’s just revisit it. “A shepherd-boy, who watched a flock of sheep near a village, brought out the villagers three or four times by crying out, "Wolf! Wolf!" and when his neighbours came to help him, laughed at them for their pains. The Wolf, however, did truly come at last. The Shepherd-boy, now really alarmed, shouted in an agony of terror: "Pray, do come and help me; the Wolf is killing the sheep"; but no one paid any heed to his cries, nor rendered any assistance. The Wolf, having no cause of fear, at his leisure lacerated or... Read More

Continuous Testing at Naukri

Continuous integration is the talk of the town. Every business is aiming to ship products quicker with no compromise on quality. With this evolution in the IT industry, there was a huge requirement to fine tune our test processes and revive the traditional test approaches. This blog details out some of the changes that happened at Naukri leading to more focused and grown-up QA practices. Challenges faced during continuous improvement: The IT industry has evolved significantly with the changing time. This evolution is majorly driven by factors like advancement in information technology,... Read More

Speeding up writing Unit Tests

Unit Tests writing, contrary to popular coding humour, is an important aspect of the development process. The process of writing Unit Tests reveals setbacks in one's code. It helps us identify complicated logic, magical functions, magic inside functions and non testable pieces of code (ex: - an if condition which is impossible to execute). Most of the programmers find writing Unit Tests tedious and cumbersome. But at Naukri we transform it into a fun way of learning more about the code base we are working on. Creating a test file is initially a repetitive process. It involves... Read More

Benchmarking of iOS Applications with AppTracer Framework

In Naukri, we always keep striving that our products keep high value in the terms of quality. High quality is the only key to make the business sustain. For ensuring the high quality of the product, we follow many benchmarking procedure. One of them is the AppTracer Framework. Following are some of the metrics that plays an important role to achieve the high quality: Application load time. API response time on different type of network like 2G, 3G, etc. Views render time after getting the response from API. Exception & crashes AppTracer framework provides a benchmarking... Read More