profile-pic
Vetted Talent

Rashmi Verma

Vetted Talent
To work in a dynamic environment that provides me a wide spectrum of experience and exposure. I want to make use of all my skills at the workplace and to serve the organization with a positive attitude and efficiency. I am seeking an opportunity where I can effectively contribute using my skills as a QA Engineer.
  • Role

    Senior QA Engineer

  • Years of Experience

    5 years

Skillsets

  • Jenkins
  • WebdriverIO
  • TypeScript
  • TestNG
  • SQL
  • SOAP
  • Selenium
  • REST
  • Postman
  • MySQL
  • Mantis
  • JMeter
  • Jira
  • Allure
  • JavaScript
  • Java
  • Github
  • Git
  • Drupal
  • Cucumber
  • Confluence
  • ClickUp
  • BrowserStack
  • azure pipelines
  • API
  • Amazon S3

Vetted For

8Skills
  • Roles & Skills
  • Results
  • Details
  • icon-skill_image
    Senior Quality Assurance Engineer (Hybrid - Gurugram)AI Screening
  • 52%
    icon-arrow-down
  • Skills assessed :Excellent Communication Skills, executing test cases, Manual Testing, Mobile Apps Testing, Python, QA Automation, test scenarios, writing test scripts
  • Score: 47/90

Professional Summary

5Years
  • Jul, 2024 - Present1 yr 10 months

    Senior QA Engineer

    HRS Group
  • Jul, 2021 - Jun, 20242 yr 11 months

    QA Engineer/Senior QA Engineer

    Growth Natives
  • Oct, 2020 - Jun, 2021 8 months

    QA Engineer Intern

    Growth Natives

Applications & Tools Known

  • icon-tool

    Java

  • icon-tool

    Selenium

  • icon-tool

    Eclipse

  • icon-tool

    Asana

  • icon-tool

    Jira

  • icon-tool

    Postman

  • icon-tool

    JMeter

  • icon-tool

    RTM

  • icon-tool

    TestNG

  • icon-tool

    Email on Acid

  • icon-tool

    Drupal

Work History

5Years

Senior QA Engineer

HRS Group
Jul, 2024 - Present1 yr 10 months
    Leading QA across Direct Distribution and Inventory Management, covering manual testing, automation, API validation, database checks, and performance testing. Contributing in Agile ceremonies and ensuring timely validation of sprint deliverables. Designed and maintained automation frameworks (WebdriverIO, Cucumber) and CI/CD pipelines for regression and smoke testing. Performed end-to-end functional, UI, API (REST & SOAP), and database testing. Automated image validation and leveraged AI tools for faster test creation and validation. Tested AI-driven MTS applications by validating media assets and metadata from APIs and Amazon S3 buckets. Built and scheduled CI/CD pipelines for automated regression and supported performance testing.

QA Engineer/Senior QA Engineer

Growth Natives
Jul, 2021 - Jun, 20242 yr 11 months
    Created test plans, test cases, and execution reports for client projects. Conducted manual functional and regression testing of web applications and landing pages. Reported and tracked defects using Jira, collaborating with cross-functional teams. Performed end-to-end QA for platforms such as Gander Gifting, Postclick, Highspot, Lamav, and Instapage. Supported other client projects, maintaining consistent QA standards.

QA Engineer Intern

Growth Natives
Oct, 2020 - Jun, 2021 8 months
    Joined as an intern during the 7th semester of engineering degree, gaining hands-on experience in live client projects. Contributed to manual testing, test case design, and defect reporting. Assisted in functional and regression testing of web applications. Collaborated with senior QA engineers in Agile/Scrum environment to deliver sprint testing tasks. Transitioned into a full-time QA Engineer role post-graduation.

Major Projects

3Projects

Cvent

    Thoroughly managing QA for their website.

Gander Gifting

    Based on casino management, from which casinos can buy and gift the product. Main responsibility to create and implement the test plan and cases for the project.

Postclick/Instapage Website

    Tested the whole website through automation and manual methods and worked with the development team simultaneously.

Education

  • B.E - CSE

    Chitkara University of Engineering & Technology

AI-interview Questions & Answers

Hello, uploads team. Myself, Rashmi Verma, and I am from Shimla. And currently, I am living in Chandigarh. I am part of a group. Currently, I have worked in a group with 2.8 years of full-time experience and 1 year of internship, which includes a total of 3.8 years of experience on my resume. And also, I have worked for 1 year and 1.3 months for Seavind organization. And I'm working there as a queue engineer only. I have worked as a queue engineer for the website where we are following the agile methodology. I have worked under the agile methodology, and we are working there for this sprint. Yes, in the sprint. And also, after that, I was working with NetApp. I have handled multiple clients. I have tested the dashboards. I have tested the apps, and I have also tested the websites. Yes. And I have also worked on the automation part as well. I am working on the data scraping part and the automation part. And you know, I have experience in functional testing, integration testing, regression testing, and sanity testing. Most of the functional part, I have knowledge of these things. And with this, I am also performing ETA testing, performance testing, and load testing for ecommerce websites. I have tested Shopify websites as well, and I have made the checklists. I have made the test cases according to the requirements of the particular website. I am responsible for maintaining the RTM documents, which is the requirement traceability matrix document. I have worked on major functionality, UI testing over different platforms. Also, I have experience in cross-browser and parallel testing and cross-platform testing as well. I have experience in responsive testing as well, which includes mobile devices, iPad devices, and multiple screen sizes. And after that, I worked on the back end. I created the pages using components which we are using over there, and yes, on the Drupal back end. And also, I have knowledge of automation testing using Java Selenium. So that's all about me. I think I'm done.

While designing a high-level system for QA automation, what design patterns would you consider and why? Basically, whenever we're designing a high-level QA automation system, the first things that come to mind are the data object model, factory model, and singleton. By following these patterns, we most of the time follow the data object model, where we put our files into different sections. In one file, we define all our objects. In another file, we define our methods. And in a third file, we save our data from where we're calling it. We create design patterns in these categories, which work as a structure we need to follow. Second, we do the structural design patterns, which include the structure you need to meet for writing the scripts. And third is the behavioral design pattern, which tells us how our script is going to behave. What test cases are going to be executed first? And what test cases are going to be executed last? I think that's all I can tell you about the high-level system for QA automation. These are the design patterns we need to follow. So, yeah, I think that's all I can say. We can use data-driven testing and fluent interface patterns as well.

Next is, how would you structure your Python code to ensure reusability and maintainability of your automated test scripts? How would you structure your Python code? Basically, you know, in simpler language, I can see when you are writing a high-level test script during testing activities, the whole Dolby you are working on the system, it makes you rely you have to make it reliable, reusable, and easier and can be reused across different testing scenarios. Whatever coding standards you are using, that should be best practices and adhere to the rules, help provide accurate test results. We have to reduce the time spent on debugging test scripts and ensure that whatever focus remains on testing in actual software products. Then, you know, enhanced readability is key. We have to increase and enhance the readability and the maintenance, which includes coding standards. When followed, make the test scripts readable and understandable for anyone on the team. For example, using clear and descriptive variable and function names such as functional names. For instance, using a function name as Rashmi with valid credentials is more intuitive than test one. You don't have to log in this; you have to test sign up. Valid credential is more initiative than the test one. You are not going to write the test 1, test 2, test 3, test 4, these kinds of naming conventions in your script because it is very difficult to remember what is written over under the script. So, you always need to follow the correct naming convention, which should be by reading those naming conventions, you are able to think or you are able to learn what are the conventions you are using. Also, you have the knowledge of better efficiency. The code should be more efficient, and it should be very efficient too. And you can anyone can read your code and test scripts. Anyone can go through those scripts. For example, create reusable functions for common tasks like a function to log in and an application. This function can be used in multiple test scripts instead of writing the login code only repeatedly. For instance, if you are using some code which is gonna follow your two test fields, you should use this script like this. You can use this same script for the other fields as well. So, you have to write the universal code. I can see. You have to always provide the universal code. So, it should be better and easier for everyone. You know? Oh, we are some permanent employees, which is working on in a new organization. Anyhow, I left my organization, then the new person will come and so whatever script I have written over there, that should be reusable, maintained, and properly. So, anyone can access that script. And there is one more thing I can say. Re deep, you know, reliability and accuracy of code. Your code should be reliable and accurate because higher the accuracy, higher the chances that your all the test cases will get passed. And less number of defects or bugs will come or errors will come in this thing. So, I think that's all I can see in this.

Okay, so you know, an open-source test automation framework that is designed for Android application. It is a powerful tool that helps developers automate tests for native and hybrid Android apps. Then, Reveratam supports black box or white box testing for this API. It makes it easy to write Java tests in JavaScript. Basically, there are the top 10 automation frameworks that you can use for this architecture for hybrid mobile structures. For example, you have a platform, whatever the architecture you are using, in that key criteria, mobile test automation frameworks include, first, test platform compatibility. It should be compatible on all platforms. Whatever platform you are using, whatever device you are using, it should be compatible with everyone. Then you have second number, which is integration compatibility. It should be integrated in all the ways. For example, whenever we are building any object or any project, we follow integration compatibility. What is integration? First, we develop a product in units. Then, you know, by integrating all those units, whenever we are integrating all those units, it should be compatible. For example, our code should not be broken. Our server should not work. So we have, whatever units we are writing in our scripts, it should be compatible. For example, I am writing test cases first, login functionality. And there is another developer or a desktop, which is writing the functionality for sign up. So when we are combining both the test cases, it should work. We know that by integrating those two, the compatibilities should work properly. Then, it should be easy to use. It should be very easy to use. Whatever architecture we are following, anyone can access that architecture. That is the first thing that we need to always keep in our mind because without it, if we are using a very complex structure, it is very difficult to maintain. Then it should be device compatibility. You know, whatever test cases you are writing or whatever script you are writing, it should be very much device compatible. Because if it is not device compatible, so any user cannot execute these test scripts in their system. So if I am working on a Windows system, so the script I'm writing, it should be compatible with different versions as well. It should work properly in a MacBook user's device as well. So we always need to keep this thing in our mind that it should work properly. Then, there is one more thing. Reporting and analytics. There should be proper reports. For example, whenever we are writing test cases or test scripts, we need proper reports for this. So we have to make proper reports for these particular functions and support. Our architecture of automation should support everything. It should be very supportive with devices, with systems, with operating systems, and everything. So, yeah, I can see. And, you know, that's all I think I can say about this.

What process do you follow to ensure comprehensive test coverage in both manual and automation testing? Basically, okay. Basically, what we do is, first, whenever we're doing any testing by automation or manual testing, we have to make a checklist for all the testing activities. Whatever test we're performing, you have to meet the checklist for even font size, font color, you know, whatever font family you're using. A little thing, you need to make a checklist in which all the scenarios are going to be covered. You need to write the test. If you're working on any functionality part, you need to write test cases. Whatever test cases are coming, either they're positive test cases or they're negative test cases, you have to give all and everything in for this, for comprehensive test coverage for both manual and automation. Always know what the test cases are. The checklist which we need to follow to complete, you know, to give a proper, verified website to the user, is a QA-verified website. You cannot give anything to the user if it's not properly verified at your end. So, to ensure the quality of any product, you always need to write test cases and checklists. Second, I can say you always need to prioritize your test cases to your checklists. First, you have to execute the high-level test scenarios. Test cases. You always know what is the high-level test cases, where what is the high-priority test cases. Then you need to know what is the medium level, what is the priority of every test case which you are writing? Because priority is very important. If there is some critical bugs which will come, the critical bugs will always come under the high-priority test cases. You know? Then the medium one comes under the medium category, and the low level comes under the least priority. Because by knowing these things, if we know the priority, we know which is going to impact mostly to our product and what we need to fix first. So, this is very important. Then, the third thing is create a list of all requirements for the application. You always write down what are the requirements that are being followed by creating these particular functionality to the application. It's very mandatory, and it's very much important in this case. Because if the requirements are not listed down or at your end, you are going to miss the test cases coverage area. You are going to miss everything. There are some issues which you left at your end, and it will come down to declines. So, always list down all the requirements because whenever you have all the things written down at your end, you will be able to ensure the quality of that particular project. So, it's very important. Next, thing is write down the risks inherent of the application. Also, leverage test automation. It helps you to write testing skills, or you need to design the test cases and scenarios based on the requirements. Also, the risk, you always write, may as I will.

I have automated first is, you know, I have a portal. There is a product. I cannot share the name of that portal. So what I have done for that portal is, you know, I have just logged in over there. First, I have logged in. I have written test cases for all the logged-in perspectives. So by using the Java Selenium framework in Eclipse, I have gotten logged into that system by using automation only. Once I logged in, then my work is over there. There are many tabs under this. And when a user posts there, you know, in every tab, this data will come and the user will be able to retrieve their data. So I just want whatever users come that is related to digital marketing, basically. So it is all the thing I have automated in my current organization is mostly related to that work. You know, numbers and pie charts regarding these. So we need to know how much engagement of the user is coming on a particular website. So we need to find these things. For that, I have retrieved the data. For example, I have retrieved the data from tab 1. I have clicked on the functionalities. I have written the code for the dropdown values. I have written the code on how to retrieve and handle the pop-ups over there. And the accuracy of my automation script is very well done because I have given this to the client and the client is very happy for my work. Also, I have written test cases or I have written so many scripts for data scraping in which the user has given us, for example, thousands of numbers of URLs and we have to get the data from their websites. For example, if they want some data in a number of columns or rows in the Excel sheet only. So that is also done from my end. And there is one last thing which I have done that I have automated all the forms and everything on that particular product. So that is all I have done from my end.

Script snippet to remind why the function does not correctly, update the dome to display, user profile, identify and explain the issue with the provided code. Okay. 1st, you have to build a function based console message generator. You know, the color, the background, font size, and text. And, for example, here, you the percentage and the, plus signs is not getting used. We need to provide this and build another console log message generator. Now I'm not able to see this will not going to be

Can you spot if it has caused you any issues in the show? No, I think the script is correct, and it's working correctly.

Yes, ma'am. What approach do you use to evaluate the quality of your code when writing test automation and ensure it adherence to best practices? So, you know, whenever we are writing any of the automation scripts, we need to ensure the coding conventions, which come under a set of rules or guidelines that define the style, format, and structure of the test automation code. Different developers and teams follow coding conventions, which include identification, command, spacing, brackets, variables, and so on. So, coding convention is very important whenever we are writing our scripts. Then we need to follow design principles. Design principles are the practices that guide the development of the test automation code, making it more modular, reusable, scalable, and maintainable. Abstraction is basically one of the principles that involves hiding the implementation details. After the designing part, encapsulation comes into play. Encapsulation is the principle that involves grouping related data and behavior into consecutive units such as classes and modules and limiting access from the outset. This helps protect the integrity and consistency of the code. Inheritance allows reusing of the existing code or functionality from a parent class or module in a child class or module, avoiding duplication. Polymorphism uses encapsulation, abstraction, and inheritance. Lastly, separation of concerns divides the test automation code into distinct layers or components with specific responsibilities and dependencies, improving modularity and testability. Then the third one is code analysis tools. We require knowledge of the tools that analyze our code if we have written our code in the standard required structure. Examples of code analysis tools include PyLint, Flake8, Pylint, PMD, Jacoco, or JaCoCo for Java, and Jest, ESLint, all for JavaScript. And the last thing is code reviews. Code reviews are very important. It is the process of examining and evaluating the test automation code by one or more peers or experts before merging the deployment code in your GitLab or with other scripts. This process helps ensure the quality and standard of the code, such as finding and fixing bugs, errors, or defects. It also enhances your code level by optimizing code performance, efficiency, and readability, sharing and learning code knowledge skills or techniques among developers or testers, and aligning and standardizing the code with project requirements. Code reviews can be done manually or automatically using tools such as Git, GitHub, or Gerrit. Different approaches can be used for code reviews, such as pair programming, pull requests, or walk-throughs. Then the fifth thing is continuous integration. Continuous integration is a practice of integrating and testing automation code frequently and automatically using tools such as Jenkins, Travis CI, or CircleCI. This helps ensure the quality and standards of the code by detecting and resolving core issues. That's all.

This is given the requirements to automate performance testing, what tools would you choose, and how would you validate reliability of performance results. Okay. Automating performance testing. So, factors to consider prior to selecting a performance testing tool include the type and scope of your software, the budget and resources available, and the skills and experiences of your team. These factors will impact your testing process and results. When it comes to the type of software, you should choose a tool that can test and validate the specific specs and functionalities of your software, such as web applications, desktop applications, mobile applications, APIs, and databases, etcetera. Additionally, you should consider the size and complexity of your software, as well as how much load and stress it can handle. When it comes to the budget and resources available for testing, you should select a tool that fits within your budget constraints, including licensing, installation, maintenance, training, and support. In addition to this, the hardware, software, and network infrastructure used for testing should be taken into account. Lastly, you should choose a tool that matches the skills and experience of the team members, including programming languages, frameworks, tools, and methodologies they are familiar with. Furthermore, the learning curve and usability of the tool should be considered, as well as how easy it is to create, execute, and analyze tests. Secondly, features to look for. When looking for features that will help you conduct effective and efficient performance testing, you should consider scalability and flexibility, accuracy and reliability, and automation and integration. A tool should be able to scale up or down the number of virtual users, and then there are other features to consider. Examples of tools are plenty, and each has its own strengths and weaknesses. Popular and effective tools include JMeter, which is an open-source and cross-platform tool. I am going to use this tool because it is very helpful. Tools like Apache JMeter, LoadRunner, and others are commonly used for load testing to simulate user traffic and measure system responses. And then, for analyzing web application performance, tools like Google PageSpeed Insights, Pingdom, and others can ensure the performance of your website. They can measure how much time your website takes to load, what is the SEO percentage of your website, what is the loading time of your website, and what are the heavier files that may make it difficult for users. These tools also provide optimization recommendations to you and your developers, so you know what needs to be updated.

Describe your experience with software development life cycle models and how they impact your process. Software development life cycle is the most important part which affects QAs each and every process. I know the things which are covered in SDLC in the work life balance. There are six constraints that follow the SDLC life balance. One is plan, then it is design, then the implement, then test, then deploy, and then maintenance. First, whenever we are going to first is planning part, which is obviously done by the managers and the team leads of the team. But planning is very important at the QA's end as well. Planning phase typically includes task and cost benefits analysis, scheduling, resource estimation, and allocation. The development team collects requirements from stakeholders or from everyone. But what is the part on this QA team will perform is, whenever you are going to plan to develop any of the projects, so QA team will rethink from their brains what are the requirements which are given by the clients, and what are the test cases, what are the things that they require? So all our whenever developer is planning to develop that particular project, so tester is also planning in their minds that they are following the STLC, software testing life cycles that how they are going to execute this particular project. Then the second thing is design phase. In design phase, a tester should also ensure the design is feasible and meets the requirements. Software engineers analyze requirements and analyze the best solutions to create the software. For example, they may consider integrations, pre-existing modules, make technology choices, and their development tools. The third point is implementation. In this phase, developers are going to implement the things. The fourth and the important phase is test phase. Test phase is related to the QA process only. The development team combines automation and manual testing to check the software and the bugs. Quality analysis team includes testing the software for errors and checking if it meets the customer requirements because many teams immediately test the code they write. The testing phase often runs parallel to the development team if you are using the agile methodology. If you are using the waterfall methodology, so it will come to QA at the end. But if you are using the agile methodology, then it is coming to the QA parallelly because one unit is developed by the development team. It will go into the testing only. If there is an issue in the particular unit, so the team will report immediately. So this is the process which we follow by as then we need to once testing is done, when so everything is done from their tester's end, and it is good to go from their end. Then we need to deploy the code on client server, which we call UAT. And then we give it to the client for a review. Once the client review is done from their end, it's good to go from their end. We deploy the code on the production server. And once it is deployed on the production server, everything is done from their end. The last thing is maintenance. In the maintenance space, among other tasks, the team fixes bugs, resolves customer issues. And if there are multiple feedbacks for the future, they do the maintenance of any website is very important. If it's e-commerce or