Key Responsibilities
1. Manual Testing
- Analyze business requirements, functional specifications, and technical requirements.
- Prepare detailed test scenarios, test cases, test data, and test plans.
- Perform:
- Functional testing
- Regression testing
- Smoke testing
- Sanity testing
- Integration testing
- System testing
- End-to-end testing
- Exploratory testing
- User Acceptance Testing support
- Identify, document, track, and verify defects.
- Perform root-cause analysis in collaboration with developers.
- Maintain test documentation and testing evidence.
2. Automation Testing
- Develop and maintain automated test scripts using Python.
- Build reusable and maintainable automation frameworks.
- Automate repetitive functional and regression test cases.
- Implement web UI automation using tools such as:
- Use PyTest or similar Python testing frameworks.
- Integrate automated tests into CI/CD pipelines where applicable.
- Maintain automation scripts as application functionality evolves.
- Generate and maintain automation test reports.
3. API Testing
- Perform functional and integration testing of REST APIs.
- Validate:
- Request and response payloads
- HTTP status codes
- Headers
- Authentication/authorization
- Error handling
- Response schema
- Data accuracy
- Automate API testing using Python.
- Experience with Postman is required/preferred.
- Experience with Requests / httpx or similar Python libraries is an advantage.
4. Database & Data Validation
The candidate will be expected to validate application and data outputs at the database level.
- Write SQL queries to validate application data.
- Perform database testing using MySQL/MariaDB and/or SQL Server.
- Validate:
- Data completeness
- Data accuracy
- Data consistency
- Duplicate records
- Missing records
- Incorrect mappings
- Data transformations
- Referential integrity
- Compare source and target data.
- Develop Python scripts to automate large-scale data validation.
- Validate millions of records efficiently using SQL and Python.
5. ETL / Data Pipeline Testing
- Test data extraction, transformation, and loading processes.
- Validate source-to-target mappings.
- Verify transformation rules and business logic.
- Identify missing, duplicate, corrupted, or incorrectly transformed records.
- Perform reconciliation between input and output datasets.
- Validate scheduled jobs and automated data pipelines.
- Create automated data-quality checks using Python.
6. File & Data Quality Testing
Experience in validating structured data files will be highly valuable.
Test and validate formats such as:
- CSV, Excel, JSON, XML, Parquet, PDF and Other structured/unstructured data formats
Develop Python-based validation utilities to check:
- File availability
- File naming conventions
- File structure
- Header validation
- Column count
- Data types
- Null/missing values
- Duplicate records
- Record counts
- Data consistency
- Source vs. output reconciliation
- Invalid/corrupted files
Experience with Pandas, PyArrow/Polars, and OpenPyXL is an advantage.
7. Web Application Testing
- Test web applications across different browsers and screen sizes.
- Validate UI functionality, workflows, forms, validations, and error messages.
- Perform cross-browser testing.
- Identify UI/UX defects that impact functionality.
- Automate critical UI workflows using Selenium or Playwright.
8. Defect Management
- Clearly document defects with:
- Steps to reproduce
- Expected result
- Actual result
- Screenshots/logs
- Test data
- Environment details
- Track defects through their complete lifecycle.
- Perform retesting and regression testing after fixes.
- Work closely with developers, business analysts, and project managers.
Experience with Jira or similar defect-management tools is preferred.
9. CI/CD & Version Control
- Work with Git-based source control.
- Understand basic CI/CD concepts.
- Integrate or execute automated tests through CI/CD pipelines.
- Work with tools such as:
- Git
- Bitbucket/GitHub/GitLab
- Jenkins
- GitHub Actions
- Azure DevOps