profile-pic
Vetted Talent

Vijay Gangwar

Vetted Talent

Design and build innovative automated solutions that optimize the way we work and deliver to our clients.

Voice of customer is the center stage of automated testing process, maximize effective test coverage and deliver a quality products. Partners across various teams including Product Development and

Software Engineering to help the quality and testing transformation. Apply Development and QA Best Practices and actively look for process improvement. Create and maintain test cases and test data using Qmetry/ TestRail/ Confluence and developed automation framework for multiple application types and business segments.

  • Role

    QA Automation Lead

  • Years of Experience

    16 years

Skillsets

  • Maven
  • Vsc code
  • TestNG
  • TeamCity
  • SVN
  • SQL
  • Splunk
  • Selenium
  • Robot Framework
  • REST client
  • REST Assured
  • Python
  • Ant
  • JUnit
  • Jira
  • Jenkins
  • Java
  • Git
  • Eclipse
  • DLP
  • cURL
  • CI/CD
  • C++
  • C

Vetted For

4Skills
  • Roles & Skills
  • Results
  • Details
  • icon-skill_image
    Senior Test Automation EngineerAI Screening
  • 67%
    icon-arrow-down
  • Skills assessed :Manual Testing, Selenium, Automation Testing, Jenkins
  • Score: 60/90

Professional Summary

16Years
  • Jun, 2020 - Present5 yr 8 months

    QA Automation Lead

    Picarro Technology
  • Nov, 2015 - Jul, 20204 yr 8 months

    QA Automation R&D3 Lead

    Broadcom/Symantec
  • Sep, 2014 - Jun, 2015 9 months

    SDET

    Alten-Calsoft labs
  • Jan, 2007 - Mar, 20125 yr 2 months

    IT Analyst

    TCS
  • May, 2009 - Jul, 2009 2 months

    Systems Engineer

    TCS
  • Apr, 2012 - May, 20142 yr 1 month

    Product Engineer Lead

    Infosys Ltd

Applications & Tools Known

  • icon-tool

    Qmetry

  • icon-tool

    TestRail

  • icon-tool

    Confluence

  • icon-tool

    Selenium

  • icon-tool

    TestNG

  • icon-tool

    Maven

  • icon-tool

    Rest Assured

  • icon-tool

    Jenkins

  • icon-tool

    Curl

  • icon-tool

    Splunk

  • icon-tool

    Eclipse

  • icon-tool

    Jira

  • icon-tool

    TeamCity

  • icon-tool

    CI/CD

Work History

16Years

QA Automation Lead

Picarro Technology
Jun, 2020 - Present5 yr 8 months
    Help team with QA Automation. Jenkins for CI/CD integration. Develop proof of concept. Designed and implemented Automation framework for SAM & Pcubed product using Selenium/web driver, Java, TestNG, Maven. Designed and Implemented Backend Automation Framework using Rest Assured, Java, TestNG. Recruited New members for Automation team and groomed them for new upcoming projects. Setting the QA Best Practices in the Organization. Grooming the team for using Automation with CI/CD pipeline. Performed Security Testing POC via burp Suit for SAM product. Deployed Automation framework and automated script to Jenkins. Understanding new requirements and providing test plan along with the effort estimation.

QA Automation R&D3 Lead

Broadcom/Symantec
Nov, 2015 - Jul, 20204 yr 8 months
    Implemented the UI & Back End test automation framework for WSS product using Curl, selenium, TestNG, Java. Designing the Backend Test framework for Infra and BOP module for Elastica team (CASB domain). Automated test scripts for Gatelet project, automation based on Selenium, Java & testNG. Automated test scripts for SaaS Apps Box and Dropbox with selenium, java and testNG. Recruited and Groomed new Resources for Gatelet product. Automated Test script for securlet project automation for Drive & Gmail. Designed and implemented automation test suit for DLP.

SDET

Alten-Calsoft labs
Sep, 2014 - Jun, 2015 9 months
    Implemented Automation test scripts Learning Platform Product using Selenium java, TestNG. Implemented Automation test Script on java for Hive and HBase based product for Learning Platform product. Code review Selenium UI Test Automation script for apollo Education.

Product Engineer Lead

Infosys Ltd
Apr, 2012 - May, 20142 yr 1 month
    Backend code development and bug fixing for the UTC Home automation product. Debugging, RCA and providing the solution product. Coding language C++ with QT framework.

Systems Engineer

TCS
May, 2009 - Jul, 2009 2 months
    UAT for the UIM32 Projects. UIM32 LLD approval from Client. UIM32 Test suit Approval from the client.

IT Analyst

TCS
Jan, 2007 - Mar, 20125 yr 2 months
    Implemented SCP02 security protocol for smartcard based on GP2.2 standard in C Language for UIM32 smartcard. Implementation of Delegated Management module for smartcard project. Used 3DES & PKCS 11 cryptography standards. RAM Memory optimization for delegated management module. Code quality according to MISRA C/ PGR standards. Analyzed the test applets codes used for testing purpose.

Achievements

  • Appreciation from Senior management for Successful Delivery of SAM project with newly created Automation team.

Education

  • Bachelor of Engineering (Computer Science)

    Kumaon Engineering college (2006)
  • MBA

    IIM Kozhikode

Interests

  • Watching Movies
  • Badminton
  • AI-interview Questions & Answers

    Hello everyone, my name is Vijay Gangwar and I have been working in IT industry for some time around 15 years and I am into the automation since last 10 years and I did my engineering from a government college in Uttarakhand and after that I joined TCS Bangalore and after that I joined Infosys Bangalore and worked for the CAC++ project and then I got a chance to work for a small company that is California Software then I started working for backend automation and after that I got somewhere in 2015 I got a chance to work for a startup there I was mainly working on backend automation, UI automation using TestNG, JudgeUnit, REST API and as well as Selenium and Java so initially it was in TestNG and then we moved it to JudgeUnit and after that I started that my company got acquired and became a part of Symantec and after that again I around 5 years working in there I moved to a smaller company that is Picaro Technologies so there I continued working as senior QA automation engineer and I used to work for both backend, UI, there you used Selenium, TestNG, JudgeUnit these were the main technologies that we used and postman we use it whenever we have to debug something related to API so mainly as a debugging tool like whenever I have some something to verify manually on for the API working things so I would be using the postman and that's also a very good tool for debugging.

    so page object module is a very good and popular model that is used for QA automation actually it's a design pattern which is used so the benefits of using page object module is that it gives our script and data related to it and controls a very systematic way of code arrangement and then it externalize the things or the locators that are changing so this is one of the beautiful thing of selenium page object module like how it will happen like something is like suppose you are automating a login page so for this page we will have a separate java class which will handle all the actions that will be done for a login page just like a method for one method for providing the username and then password and then click on to the login button and then one whole method for doing a login action like providing username then password and then logging in so this is how a page of a login page will have look like and this page will have all the locators and the method associated to it which I explained earlier locators will also be there and the test method for the test method we will have a separate class that we can something we can say java login page test method so which will happen and where we will in that case we will be providing the username and password for that scenario so with that we will do and again we can modify it you using the data provider like if we have to do extensive testing data driven testing on this we can provide the data provider either or if we have something which has to be provided from the external even we can use the CSV file and use it as a data and pass that as a data input and it will be taken care by the data provider

    So for handling the headless mode in Jenkins build, we can use the html folder or html unit we can use or basically we have to pass a parameter means multiple browsers actually test Jenkins test will be running in the browser suppose it is running in the Chrome then we have to pass that pass the capabilities like if it has to be run in the headless mode or or on the normal mode so once that parameter is provided so from the Jenkins build we can do it either we can use a parameterized Jenkins build which will pass the parameters which will pass a parameter and that can be taken care or if a permanence so that can be done or this can be actualized also. So to enumerate it like we have a normal test case and normal test case and testng file for that scenario and in a parameter testng file we have to pass a parameter for a headless capability and which then get cascaded into the script which is running or instant changing the our parameters so to again externalize either we can pass it as the parameter there itself or even we can parameterize since it is a Jenkins build so we can we can take the liberty of providing as a parameter whether we want to pass as a headless or normal so weakness can be passed through Jenkins parameterized build also. So based on the choices we made it will run the test accordingly

    So this is one of the normal features that we have in our Selenium test. So like suppose the login test which I described, now test execution has happened, again we have to pass, we have to publish the results of this test. So what happens like, we can create a separate job, separate job which is like the post action of the job that we can create. Like once the test build is executed and we have got the result in the test and after that we can link a different cron job which can trigger the result reporting. So that job, that reporting job will pick that, will pick, like we can pick up, as we see we can pick up the, reports are always handled at the STM, respective reporting folder, we can pick the STM folder or the other way which we would have kept or the normal Jenkins report that we have in the STM. So that file is dot, that file we have with the dot STM. So we can pick that report file in our second job and link that job as a post execution step. So once the execution is completed, it will pick the, run that second job which will trigger the report sharing of the test execution. So it can happen very easily with this.

    So to handle the popup, authentication popup using Selenium WebDriver, so to do this we have to, there are multiple ways of handling it, either like, we have to, we can use the session tokens and keep on using it as a bearer token, and this will make the session active all the time, or whenever it is failed, it can regenerate the session using that credentials, that is one way. Suppose a login popup happens, then we have to, in that we have to pass the credential, because if it is a UI, there is no way of passing the, if it is a UI, since UI popup is coming, so that approach will not work, so it will, definitely it will ask for the username and password, we can pass the username and password using the, using the Windows handler, like driver dot, one code is there for driver, that is driver dot, where we have to get the handle, driver dot handle, and get that particular popup, which window, like that handling mechanism, that is used like current window, we know, we are current window, and once popup has come, we move to that, get the handle of that popup, and then switch to that handle, and then in that switch to that handle, we can provide the login user, username and password, and click the authenticate button, if it is there, since it is a, so with that it should be handled, or if it is a normal popup, then we can simply use the action class, to accept the, just accept the popup, that is pointed out, this is other way of doing.

    So this scenario one scenario is facing us like manual testing it works fine and then selenium when I try it will not work so I was trying with the files and one I was trying to do a file upload on a java g drive so there what happened whenever and I was testing it on friday one friday so earlier it was working fine and then friday when I was testing it again it failed I tested it manually and the upload file upload on java g drive was working fine then I realized like the earlier method which I used of putting the file name to the input that input it was not no no where it is taking so it was not working and I realized that I have to do something different which is make it handle and accept the file so I since it was not working I tried multiple ways it still it didn't work so what I used the I moved to the auto it wasn't there so there I used the file loader utility provided the location and all and with that it started working and so this is one scenario it happened to me another was like one scenario somewhere I was trying to click on some button and that action was there in my class in my test case and when I checked manually it was working fine but when I try to do it using selenium testing it was failing it is not identifying it so when I checked that it was saying like just click on that just hover for second some second on that wait for some time and then you have to it will get enabled basically it was disabled initially and once we are hovering it and then only it will get enabled and we can after that it is clicking on so this was one of scenario when I which I encountered so I basically I changed the steps to make a mouse hover and then click on that button.

    So in this code we are doing a get of data get call and we are setting the status code in this what more we can do is like instead of doing the status code we should check if some data is coming in the response like if response is something sometime they say ok ok response or some data is also there along with that they send that data sometime what happens like call is ok when you share the call you will get a 200 status word means successful but no data is not there it is null data or it is not there call is successful but there is no data so that one part we can do small validation we can add as assert and another one is like regarding the path of this call that looks somewhat ok to me yeah this is only one solution like I am going further and checking for the data it is coming

    so in this I can see that given when then but but is problematic but should be replaced is something else like you can replace but with then like and you will see a welcome message and when user clicks then so the like assertion after that can happen instead of but we can use it as a end message like user clicks the logout and it is reacting so you can put it as a end also instead of but other things seems ok like given when and then yeah only one comment regarding the but other things seems ok

    There are multiple things that can be done for integrating a security testing. One is like it can be taken up separately using HCL AppScan for SAST and DAST testing. That suite is a totally different suite and we can integrate it with our Selenium 2 suite and publish the result. So this we used to do it in our current project for security clearance and if any alert is there or test failure is there, we will take action correspondingly. So this is one plan. Other plan is like going if you are going for tool based. So since it is Selenium automation, so means it's automation. So we have to integrate a tool, run a tool on our application and that running should be done and that execution should be done using the Selenium automation suite. We have to create a cron job to trigger that suite from a Jenkins environment and it goes to that particular node, test execution happens for security testing and then we get the result. So this is one way of doing it. If we are writing your own Selenium test case suite for security testing and then running automation, this is something different like newly write it to your written test and application. This can also be done, but it is a very tricky part, easiest part is going with the already set vendor for security testing or if some security testing engineer is there who is writing the Java code perfectly here. So then we have to go to the OWSP top 10 plan and based on that we can create scenarios

    Yeah, I have to change it for the charger, my system was low on the charge, so for my selenium project mostly it will be, so like initially best coding practices. Yeah, I have to change it for the charger, my system was low on the charge, so for my selenium project mostly it will be, so like initially best coding practices. Yeah, I have to change it for the charger, my system was low on the charge, so for my the number of test mentioned should be as per the test case description and the expected result should have as per the expectation and assertion should be there as per the expectation of the test case.

    To use Jenkins as a part, so in that the feature file part I would like to have because multiple people will see it, so the feature file part need to be handled, VDD is mainly I have used is for the UAT purpose where person from the business team, he will be writing the test case scenarios and steps as per the UAT and user need he will be writing, he will first he may be he can add some test case and the steps and once he write those steps then we will get to know how we will get we can code it easily them but the main part like what is needed what should be validated this can be done from that, so the feature file part on which person has to write that need to be taken care, so because this will be taken by the business development team and he will handle it, so we have to externalize and manage that part, so once in that is managed it will become easy for the project management for the Jenkins.