Software Quality Assurance Laba

Free Training Courses for Testing Skills
We hire the best students
2 months
2 times per week, morning classes
Fully online


What is Software Quality Assurance?
It is a means and practice of assuring a product's required level of quality at every stage of the software development life cycle. QA aims to check the desired performance of a program with its actual performance.
Course Content
Section 1: Basic Theory and Practice of Testing
1. Introduction to the Course:
  • The IT industry: overview
  • Basic concepts and software development lifecycle
  • How software is created: from idea to product on the market (simple introduction to the Waterfall development process)
  • Project: what it is
  • Roles and members of a project team
  • Software that Solvd tests and its application
2. QA Basics:
  • The concept of testing and typical myths
  • How to grow professionally in testing
  • QA skills and why it is important to develop attentiveness at the start
3. SDLC: major stages and popular models. Practical part: describe the life cycles of day-to-day activities.
4. A waterfall development life cycle and iterative life cycle. The responsibilities of a testing team at different stages.
5. Types of testing:
  • Detailed classification
  • Black box vs. white box
  • AdHoc vs. exploratory testing
6. Types of test documentation, its hierarchy and links between documents. Test documentation and how to maintain it in Confluence. Real examples: from a test plan to a defect report.
7. Making test cases and checklists. The key differences in use cases and what cases to use with checklists and test cases. Test analysis and risk-based testing.
8. Designing test cases based on User Story/Flow Diagram/Specification. Test case management system on the example of Trail. UI elements and gestures. Practical task: create test cases in Trail.
9. Methods of test analysis:
  • Positive/negative
  • Equivalency classes
  • Domain testing
  • Exploratory testing

Practical task: create test cases in TestRail using the described methods.
1. How to search and document defects. The life cycle of a defect. The main fields of the defect report. Priority vs. severity.
2. Bug tracking systems: Jira and Trello. The life cycle of project tasks and how to track them all way from creating to closing. Responsibilities of team members in the context of a bug-tracking process. Practical task: search for ad-hoc bugs on the web and make an accurate bug report in JIRA/Trello.
3. Agile methodologies. Scrum vs. Kanban. Agile testing.
4. Test: Section 1.
Section 2: Technical Basics of Testing
  1. Databases. How to create tables and work with databases. SQL requests. Practical tasks: select data with different conditions from the same table; make data requests for data analysis and reporting.
  2. Client-server architecture of applications. Elements that require testing. The meaning of a web browser in the context of the client-server model.
  3. Principles of client-server interaction:
    • Basic HTTP requests and responses; structure
    • Data interchange formats: JSON vs. XML
    • Client and server communication codes
    1. The basics of networking technologies. Layers of network protocols: MAC, TCP, IP, DNS and HTTP.
    2. The concept of API and the types of its testing. Practical task: test REST API.
    3. Performance testing using JMeter.
    4. Git. Local and remote repository. Branches.
    5. Test: Section 2.


Stream A: Testing Mobile Applications
  1. Release cycles in mobile development: client cycle and server loop. Back end: release cycle (Integration, Staging, Production).
  2. Gitflow and development in multiple parallel code branches.
  3. Distribution of builds via Firebase, Jenkins and TestFlight. Ways to take a correct build given a particular phase of a client release cycle and a phase of the server release cycle.
  4. Specifics of testing on mobile devices:
    • iOS testing: debugging, logging, build installation, OS principles, recording videos and making screenshots
    • Android testing: debugging, logging, installing builds, OS principles, recording videos and making screenshots
    • Specific types of testing (mobile only): Pushes, FAS, bad network and offline
    1. Guidelines for iOS and Android.
    2. Practical task: run functional and UI tests on mobile devices
    3. Run the simplest API tests on mobile devices using Charles Proxy. Practical task: set up Charles Proxy, intercept requests from the simulator, enable SSL proxying and intercept requests from a real device.
    4. Practical task: write test cases for mobile applications; create bug reports for mobile bugs.
    5. Estimation of a testing effort.
Stream B: Testing Web Applications
  1. Web application testing: the client-server architecture of web applications, dynamic page generation, page layout, images and other decorative elements. JavaScript: a programming language built into a browser.
  2. Chrome DevTools. DOM pages, working with uploaded data, requests and website load, simulation of working with devices.
  3. Usability testing: roles and tasks in testing website usability, basic usability assessment techniques, interface elements and rules for their use, and ways to conduct usability testing.
  4. Pixel Perfect testing: an overview of most used tools.
  5. Practical task: perform functional and UI tests for web applications.
  6. API testing of web applications using Postman web applications.
  7. Practical task: write test cases for web applications; create bug reports for web applications.
  8. Estimation of a testing effort.
Section 3: Final Preparations and Exam
Diploma project:
Project simulation: a 2-week iteration of developing a mobile/web application. You interact with the project team. Test analysis, test design, execution of test scenarios for new features, ticket checking and regression testing. Your mentor is a team leader.

The mock project aims to put theory into practice and activate and check your knowledge.

Practical tasks:

  • Planning and estimation of effort
  • Writing test cases for a new release in Testrail
  • Executing tests on mobile with test case filling in Trail and reporting bugs in JIRA/Trello
  • Checking resolved
  • Related activities: YTB texting in slack, reports and YTB scrum voice meetings
  • Sigh-off under the direction of a mentor
  1. The specifics of a technical interview: checking practical skills via interviewing, completing test assignments, and getting feedback and recommendations for improvements.
  2. Final exam and diploma project presentation
How To Enroll
Fill in the form at the bottom and attach your cover letter and resume in English
Pass an interview with our recruiter
Pass interview with our tutor
Life Hack
Don't mention in your resume technologies with which you are not confident. We'll clarify your competence during the interview. Keep it short: try to fit everything on one page.
What We Expect From You
Bachelor's or Master's degree
in Computer Science, Computer Engineering or similar. Senior students are also welcome
Strong motivation
Be ready to spend at least 20 hours per week studying
Computer literacy
Understanding the basics of computer science and experience working with various operating systems is needed
B2 English level
Ability to communicate smoothly with a client and English-speaking teams
Our Tutors
Dzmitry Guzhonak
He is a Resource Manager at Solvd. Guzhonak has been a tutor for Labas in Ukraine and Argentina since 2018. He has over five years of working as a Manual QA Engineer testing fitness, fintech and e-commerce solutions and on customer support projects. He has earned vast experience working with web applications.
Alexander Humeniuk
He has been a tutor for Manual QA Laba since 2020. Humeniuk earned his Master's degree in Computer Engineering from Chernivtsi National University (Ukraine). He joined Solvd as an Automation Engineer after graduating from Test Automation Laba. He has over two years of experience working on e-commerce projects, mainly with UI Web automation (Java/JS) and automation of native mobile applications.
Anastasia Kuzmich
She has been a tutor for Manual QA Laba since 2019. Her experience in software QA goes over five years. Kuzmich has been a Team Leader for over three years, working on a cross-platform fintech project, and has accumulated vast experience with different domains: uber-style, fitness, loyalty and fintech apps.
Our Courses in Numbers
500+ students
Who Have Completed Our Courses
80%
Employment Rate of Our Graduates
30+ years
of Combined Experience That Our Tutors Have
F.A.Q.
When does the course start? How do I know?
As the group is formed. You will receive a notification by email.
How much does the course cost?
Our course is free of charge since we are interested in training competent specialists for our company.
Do I need to have experience in coding to start?
Our course is focused on learning from scratch, but if you already have any experience then this will be a big plus for you.
Are there any age restrictions?
We are against ageism. The only thing that you need to always remember is that the course is intensive and will take up almost all of your free time.
Is it possible to work and study at the same time?
Yes, it is possible. But keep in mind that in this case you will have a very high load and you need to assess whether you are ready to devote all your time and energy only to work and study.
What do I need for the first / subsequent lessons?
Your desire to learn and a computer.
Enroll Now!
Your resume and motivation letter must be written in English.
Applications without a cover letter and resume will not be considered.
Your Email
First and Last Name
Phone Number
Telegram
Location
Resume:
PDF. Keep it on one page. Give us the most important and relevant information.
Cover Letter:
PDF. Tell us why you want to enroll – free format.