0% found this document useful (0 votes)
26 views37 pages

Mid Defense Internship Report

The document is an internship report by Satish Maharjan on his Quality Assurance internship at Chulo Solutions Pvt. Ltd., submitted to Tribhuvan University. It details his hands-on experience with various testing methodologies including manual testing, web automation, mobile testing, and API testing, while also acknowledging the support from mentors and the organization. The report outlines the objectives, scope, and organizational details, along with a structured overview of the internship activities and learning outcomes.

Uploaded by

Rajun Pandey
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views37 pages

Mid Defense Internship Report

The document is an internship report by Satish Maharjan on his Quality Assurance internship at Chulo Solutions Pvt. Ltd., submitted to Tribhuvan University. It details his hands-on experience with various testing methodologies including manual testing, web automation, mobile testing, and API testing, while also acknowledging the support from mentors and the organization. The report outlines the objectives, scope, and organizational details, along with a structured overview of the internship activities and learning outcomes.

Uploaded by

Rajun Pandey
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 37

TRIBHUVAN UNIVERSITY

Faculty of Bachelor of Science in Computer Science and


Information Technology

Internship Report

On

“Quality Assurance”

At

“Chulo Solutions Pvt. Ltd.”

Submitted to

Department of Computer Science and Information Technology

Kathmandu Bernhardt College

Bafal, Kathmandu

In partial fulfillment of the requirements for the Bachelor’s in Computer Science and
Information Technology

Submitted by

Satish Maharjan (TU Roll No.: 26110/077)

Under the supervision of

Abhimanyu Yadav

May, 2025
Kathmandu Bernhardt College
Bafal, Kathmandu

SUPERVISOR’S RECOMMENDATION
LETTER OF APPROVAL

ACKNOWLEDGEMENT

I would like to express my heartfelt gratitude and sincere appreciation to my esteemed


internship mentor, Mr. Aadesh Shrestha, and the entire team at Chulo Solutions. It has
been an immense pleasure to learn and grow under his guidance. His unwavering support

3
and valuable insights have played a crucial role in shaping my internship experience. I am
truly grateful for his dedication and the collective efforts of the team in making this
journey enriching and fulfilling.

It is with great pleasure that I extend my heartfelt gratitude to everyone who supported
me throughout the course of this project. I am deeply grateful to my supervisor, Mr.
Abhimanyu Yadav, for his invaluable guidance and support during my Quality
Assurance internship. His continuous encouragement, insightful suggestions, and
expertise have played a crucial role in helping me successfully complete this internship. I
sincerely appreciate his mentorship and the knowledge I have gained under his
supervision.

I would like to express my sincere gratitude towards the Department of Faculty of


Computer Science and Information Technology, Kathmandu Bernhardt College, for
providing me with the wonderful opportunity, encouragement and environment to
explore my skills and gain learning experience through this internship opportunity.

Last but not the least, I would like to express my thanks to all the faculty members,
friends and family who have direct and indirect contribution during this internship.

Satish Maharjan
TU Exam Roll No.: 26110/077

4
ABSTRACT

During my Quality Assurance internship at Chulo Solutions, I gained hands-on


experience in various testing methodologies, including manual testing, web automation,
mobile testing using Appium, API testing with Postman, and test management with Jira. I
learned to design and execute test cases, identify and document bugs, and ensure software
quality across different platforms. Through web automation, I worked with testing
frameworks to enhance efficiency by automating repetitive tasks. Using Appium, I
conducted mobile application testing to verify functionality and user experience on
multiple devices. Additionally, I explored API testing with Postman, validating endpoints,
response structures, and automating test scripts for reliability. Jira played a crucial role in
tracking and managing test cases, bugs, and project workflows, improving collaboration
and issue resolution. This internship strengthened my analytical skills, attention to detail,
and ability to work in a structured testing environment. This opportunity not only
deepened my technical expertise but also improved my ability to communicate findings
effectively and contribute to a team-oriented quality assurance process.

Keywords: Manual Testing, Automation, Selenium, Appium, API testing, Jira

5
TABLE OF CONTENTS
SUPERVISOR’S RECOMMENDATION.............................................................................

LETTER OF APPROVAL.....................................................................................................

ACKNOWLEDGEMENT.....................................................................................................

ABSTRACT............................................................................................................................

LIST OF FIGURES...............................................................................................................

LIST OF TABLES................................................................................................................

LIST OF ABBREVIATIONS................................................................................................

CHAPTER 1: INTRODUCTION.......................................................................................

1.1. Introduction...................................................................................................................1
1.2. Problem Statement........................................................................................................2
1.3. Objectives......................................................................................................................2
1.4. Scope and Limitations....................................................................................................2
1.4.1. Scope.........................................................................................................................2
1.4.2. Limitations.................................................................................................................2
1.5. Report Organization.......................................................................................................3
CHAPTER 2: ORGANIZATION DETAILS AND LITERATURE REVIEW.............

2.1. Introduction to Organization.........................................................................................4


2.2. Organizational Hierarchy...............................................................................................5
2.3. Working Domains of Organization.................................................................................5
2.4. Description of Intern Department..................................................................................6
2.5. Literature Review...........................................................................................................6
CHAPTER 3: INTERNSHIP ACTIVITIES......................................................................

3.1. Roles and Responsibilities..............................................................................................8


3.2. Weekly Log.....................................................................................................................8
3.3. Description of Projects Involved during Internship........................................................9
3.4. Task/Activities Performed............................................................................................10
3.4.1. Manual Testing........................................................................................................10
3.4.2. Test Case..................................................................................................................10
3.4.3. Automation using selenium.....................................................................................21
3.4.4. Mobile Automation using Appium...........................................................................21

6
3.4.5. API Testing using Postman.......................................................................................22
3.4.6. Jira...........................................................................................................................23
CHAPTER 4: CONCLUSION AND LEARNING OUTCOMES.................................

4.1. Conclusion....................................................................................................................24
4.2. Learning Outcomes......................................................................................................24
REFERENCES......................................................................................................................

APPENDICES..........................................................................................................................

7
LIST OF FIGURES

Figure 2.1 - Organizational Hierarchy.......................................................................................


Figure 3.1 - Starting Appium Server.......................................................................................
Figure 3.2 - Appium Inspector Capabilities............................................................................
Figure 3.3 - Appium Inspector to get XPath............................................................................
Figure 3.4 - TrelloAPI Testing Script to Create a Card in Postman........................................
Figure 3.5 - Jira for reporting Issues........................................................................................

8
LIST OF TABLES

Table 2.1 - Contact Details........................................................................................................


Table 2.2 - Internship Details....................................................................................................
Table 3.1 - Weekly Log of Internship Activities.......................................................................
Table 3.2 - Test Case for Sign up Module...............................................................................
Table 3.3 - Test Case for Login module..................................................................................
Table 3.4 - Course and Lesson Module...................................................................................

9
LIST OF ABBREVIATIONS

AI Artificial Intelligence

API Application Programming Interface

AWS Amazon Web Services

GCP Google Cloud Platform

iOS iPhone Operating System

IoT Internet of Things

ISO International Organization for Standardization

QA Quality Assurance

UI User Interface

10
CHAPTER 1: INTRODUCTION

1.1. Introduction

During my Quality Assurance internship, I had the opportunity to work on multiple


automation projects, gaining hands-on experience in web, mobile, and API testing. One of
my key projects involved automating the TechBrain.ai website, an online learning
platform that offers courses on Ruby and other technologies. I utilized web automation
techniques to verify the platform’s functionality, ensuring smooth user interactions,
proper course accessibility, and overall system reliability. Through automated test scripts,
I was able to streamline repetitive testing tasks, improving efficiency and accuracy.

In addition to web automation, I also conducted API testing on Trello’s API using
Postman. I tested various endpoints, validated response structures, and automated API test
scripts to ensure the proper functioning of Trello’s API services. This helped in
identifying potential issues related to request handling, authentication, and data integrity,
contributing to a more stable and efficient API ecosystem.

For mobile automation, I worked with Appium to automate MyDemoApp, focusing on UI


components, user interactions, and performance testing. Through this, I ensured that the
mobile application delivered a seamless experience. This hands-on experience with
Appium allowed me to understand the complexities of mobile testing, including handling
gestures, dynamic elements, and cross-platform compatibility.

Throughout my internship, I also leveraged Jira for project management and issue
tracking, effectively documenting bugs, managing test cases, and collaborating with
developers to resolve issues efficiently. Using Jira streamlined the testing workflow,
allowing better communication and tracking of reported defects.

This internship provided me with valuable experience in automation testing,


strengthening my problem-solving skills and deepening my understanding of structured
QA processes. It also enhanced my ability to work in an agile development environment,
where continuous testing and collaboration play a crucial role in delivering high-quality
software.

11
1.2. Problem Statement

Ensuring software quality, functionality, and reliability is a major challenge in software


development. Manual testing is time-consuming, error-prone, and inefficient for repetitive
tasks, making automation essential for improving accuracy and efficiency. API
inconsistencies, UI defects, and performance issues in web and mobile applications can
lead to poor user experiences and system failures. Additionally, effective issue tracking
and project management are crucial for maintaining smooth workflows and collaboration.
Implementing automated testing, API validation, and structured test management
enhances software reliability, accelerates issue detection, and ensures a seamless user
experience.

1.3. Objectives

The objectives of this internship can be summarized as follows:

 To automate testing processes by implementing web, mobile, and API automation


for efficient and accurate software validation.
 To enhance software reliability by identifying and resolving bugs, UI defects, and
performance issues.
 To streamline issue tracking and collaboration using Jira for effective test
management and bug resolution.

1.4. Scope and Limitations

1.4.1. Scope

The scope of the internship are:


 To improve software testing efficiency by implementing automation for web,
mobile, and API testing, reducing manual effort and errors.
 To enhance software quality and reliability by identifying bugs, performance
issues, and ensuring smooth functionality across different platforms.
 To streamline issue tracking and project management by using structured
workflows for defect reporting, test case management, and team collaboration.
1.4.2. Limitations

The limitations of the internship report are:

12
 This report may not provide a comprehensive understanding of the entire
company’s functioning.
 Certain details related to project may be omitted due to privacy policy of the
company.
 The report may not include all the activities conducted within the company.

1.5. Report Organization

The report is structured into four chapters, each serving a specific purpose and providing
overview of the project and internship experience. The organization of the report is as
follows:

Chapter 1: Introduction
This chapter contains the internship overview with its problem statement, objectives,
scope and limitations.

Chapter 2: Organization Details and Literature Review


This chapter delves into comprehensive details about the organization. It contains
organization’s overview with organizational hierarchy and working domains of
organization.

Chapter 3: Internship Activities


This chapter focuses in the roles and responsibilities during the internship period. It
includes weekly log of activities performed and a detailed description of the specific
projects involved during the internship.

Chapter 4: Conclusion and Learning Outcomes


This chapter contains the conclusion and learning outcome based on the internship.

13
CHAPTER 2: ORGANIZATION DETAILS AND
LITERATURE REVIEW

2.1. Introduction to Organization

Chulo Solutions Pvt. Ltd, formerly known as Techrise, is a software development


company dedicated to creating and maintaining applications. It is Nepal branch of
Namespace Inc. located in Japan. With a focus on new business development mainly in
Asia and the U.S., they utilize technical skills to build and manage various types of
applications, including web apps, mobile apps, blockchain apps, and IoT apps.

The company services cover a wide range of areas to support the digital transformation of
businesses. They assist in the development of new digital services, conduct research to
explore the potential of these services, and design user-friendly interfaces based on the
"User First" principle.

From web to mobile app development, the company follow an agile approach to handle
rapid changes in customer needs and market trends. Additionally, they offer operation
services to maintain and optimize the performance of our clients' products. In the realm of
artificial intelligence (AI), the company specialize in developing AI models using
machine learning or deep learning techniques. These models are tailored to meet various
business needs, from natural language processing to image and video analysis.

Table 2.1 - Contact Details

Organization Chulo Solutions Pvt. Ltd.

Established Date July 23, 2016

Address Kumaripati, Lalitpur

Contact Number 9849177862

Website www.chulo-solutions.com

14
2.2. Organizational Hierarchy

Chulo Solution Ltd. Pvt. demonstrates a hierarchical organization structure with various
departments that work cohesively to facilitate business processes. The Director of Chulo
Solutions plays a crucial role in directing both the management team and technology
teams, ensuring good decision-making, and achieving favorable outcomes for the
business. Under the guidance of a Project Manager, several teams operate such as Web
team, ML team, Android team, iOS team and QA team. During the internship tenure, the
intern had the opportunity to work with the QA team.

Figure 2.1 - Organizational Hierarchy

2.3. Working Domains of Organization

Chulo Solutions Pvt. Ltd. provides multiple services in the area of website design and
application development. The areas of expertise of the organization are:

 Web Applications
 iOS and Android applications IT consulting
 AWS, GCP and other cloud computing
 Machine Learning, Deep Learning
 Blockchain applications, smart contracts

15
2.4. Description of Intern Department

In Chulo Solutions, the department of intern is run by the senior developers which is
designed to nurture young talent, providing them with hands-on experience, mentorship,
and the opportunity to work on real-world projects. Experienced employees are assigned
to guide interns and provide technical support, career advice, and regular feedback. The
work environment of the company was very welcoming and friendly. Interns were also
included in office events. Office events helped interns interact with other employees and
build bonds.

Table 2.2 - Internship Details

Start Date 17th February, 2025

End Date

Total Duration

Position Quality Assurance Intern

Mentor Aadesh Shrestha

Working Hours 11 AM – 5 PM

Office Days Monday – Friday

2.5. Literature Review

In the simplest terms, Software Testing is a process to ensure the accuracy, completeness
and quality of any developed software. Rather than limiting this to a formally technical
process used to investigate and measure quality of the developed computer software in
terms of correctness, completeness and security, it is imperative to test the software
components and the software as a whole for integrity, capability, reliability, efficiency,
portability, maintainability, compatibility and usability of the software. This is
particularly important in an operating environment where it is planned to be implemented,
and testing will need to adhere to the technical requirements as described under ISO

16
standard ISO 9126. Effective testing requires the presence of adequate and suitable test
data. (Regulwar, 2010)

Selenium is an online web based software testing tool. In this article, we have study the
design and functioning of the selenium tool and used it to test various online applications.
In order to test an application, testers do need not to learn the selenium web driver tool
completely. This tool is helpful for a developer and tester, they can analyze their code
owing to screen shot characteristics of framework. It generates the adapted test report to
the tester. It is very simple to sustain and restore the test suite for new version of the
application by this tool. (Devi, Bhatia, & Sharma, 2017)

Aiming at the problems of how to improve the quality of mobile applications and user
experience continuously, and how to use automation testing technology rationally to
avoid wasteful duplication of effort, a design method of the automation testing based on
Appium is proposed. Appium is applicable to testing native, Web applications or hybrid
mobile applications, and it is a cross-platform testing framework, which supports mobile
application testing on iOS, Android and Firefox OS platforms. (Wang & Wu, 2019)

Postman is one of the greatest API automation and documentation tools available
today. The old methods of manually creating and testing APIs no longtime scale as
today’s software and services can interface with hundreds of APIs within a single
application. Development, testing, and delivery teams must work together to make sure
that applications work barrier with APIs to provide a business advantage, rather than
cause a business obstacle. Collaboration and operational efficiency are the keys to sharing
modern API- powered applications. And this is the space that Postman plays in. (Kore,
Jadhav, & Lohar, 2022)

In Software is an important thing that makes our life easier in day to day living. In
creating a software in any field of expertise requires an engineering process and it
includes software testing. Testing requires manpower that it needs bug monitoring tool
like Jira. (Gorro, 2019)

17
CHAPTER 3: INTERNSHIP ACTIVITIES

3.1. Roles and Responsibilities

During my Quality Assurance internship, I focused on ensuring software quality through


manual and automated testing. My key responsibilities included:
 To create, execute, and update test cases to ensure software functionality and
reliability.
 To develop and run automated test scripts for web, mobile, and API testing.
 To perform manual testing to identify bugs, inconsistencies, and usability issues.
 To validate API endpoints and responses using Postman.
 To automate and test mobile applications using Appium.
 To log, track, and report defects and issues using Jira.

3.2. Weekly Log

The details of activities performed on weekly basis are tabulated below:

Table 3.3 - Weekly Log of Internship Activities

Weeks Activities Performed

Week 1  Learned basic QA terminologies and the fundamentals


(Feb 17 – Feb 21) of test case creation and execution.
 Gained knowledge of XPath and its use in locating web
elements for automation testing.

Week 2  Learned how to create a test plan, including defining


(Feb 24 – Feb 28) the scope, objectives, and testing strategies.
 Gained knowledge on setting entry and exit conditions
for tests to ensure proper execution and clear
completion criteria.

Week 3  Automated testing using Selenium for the TechBrain.ai


(Mar 3 – Mar 7) website, created a test plan, and developed test cases to
ensure functionality and performance.

18
Week 4  Learned about Mocha.js for test automation and
(Mar 10 – Mar 14) successfully installed it to run automated tests.
 Conducted Appium testing for MyDemoApp, ensuring
mobile app functionality and performance across
Android devices.

Week 5  Learned how to perform API testing using Postman for


(Mar 17 – Mar 21) the Trello API, validating endpoints and responses.
 Gained knowledge of writing Postman scripts and
setting expectations to automate and validate API
requests and responses.

Week 6  Learned about Jira for project management, including


(Mar 24 – Mar 28) how to create and manage issues for efficient tracking
and collaboration.

3.3. Description of Projects Involved during Internship

The TechBrain.ai website was automated using Selenium in Python to test key
functionalities like login, course navigation, and user interactions. Test scripts were
developed to streamline the testing process, reduce manual effort, and ensure that features
remained functional after updates.

Appium was used to automate testing for MyDemoApp on Android devices. Automated
tests focused on UI interactions, form submissions, and app navigation, ensuring
consistent user experience and identifying performance issues across different Android
devices.

API testing was performed using Postman for the Trello API, validating endpoints, status
codes, and response formats. Postman scripts were written to automate these tests,
ensuring API reliability and accurate data exchange.

19
Jira was utilized for issue tracking and project management, where defects were logged,
and progress was tracked to ensure timely resolutions. It helped in prioritizing tasks and
improving communication within the team.

3.4. Task/Activities Performed

3.4.1. Manual Testing

Manual testing of the TechBrain.ai website involved verifying key functionalities such as
user registration, course navigation, and content accessibility. Test cases were created and
managed using a Google Spreadsheet, which allowed easy collaboration and tracking of
test execution. Bugs, UI inconsistencies, and performance issues were identified, ensuring
the platform’s overall usability and reliability.

3.4.2. Test Case


Table 3.4 - Test Case for Sign up Module

Test Test Pre- Expected Statu


Test Steps Test Data
ID Description Condition Result s

It should Pass
redirect to login
1. Navigate to
Url: page with
signup page from
https://techbrain. following
the sign in page.
ai/users/sign_up notification:
Verify if the 2. Enter valid
Email: "A message
user can sign email.
kurosubin@gma with a
SU_0 up using The user is 3. Enter valid
il.com confirmation
1 valid on signup password.
Password: link has
user page. 4. Enter valid
P@ssword123 been sent to
credentials confirmation
Confirm your email
password.
Password: address. Please
5. Click on "Sign
P@ssword123 follow the link
up" button.
to activate your
account."
SU_0 Verify if the 1. Navigate to N/A The user should Pass

20
email account the
The user user used to
user gets have got
has sign up register.
confirmation confirmation
2 using valid 2. Check if the
link mail from
credentials user has received
via email Techbrain.ai
. confirmation
mail.
1. Navigate to Pass
email account.
Verify if the It should
2. Click on
user gets redirect to login
confirmation link
registered page with
The user sent via email.
SU_0 successfully following
has sign up 3. Check if the N/A
3 after visiting notification:
using valid link redirects to
confirmation "Your email has
email. login page and
mail sent via been confirmed
the
email successfully."
user is registered
successfully.
1. Navigate to Pass
login.
Verify if the
2. Click on
user can The user should
The user "Didn't receive
SU_0 resend be able to resend
has sign up confirmation N/A
4 confirmation confirmation
using valid message".
message to mail.
email. 3. Type the email
mail.
you used to sign
up.
SU_0 Verify if the 1. Navigate to N/A The registered Pass
5 user with The user login. user should not
confirmed has sign up 2. Click on be able
email tries using valid "Didn't receive resend
to resend email. confirmation confirmation
confirmation message". message with

21
mail. 3. Type already message
confirmed email displaying:
and click "Email was
"Resend". already
1. Navigate to Url: Pass
signup page from https://techbrain.
There should be
Verify if the sign in page. ai/users/sign_up
validation
user can sign 2. Enter valid Email:
message
SU_0 up with The user is user credentials [email protected]
displaying:
6 already on signup with already Password:
"Email has
registered page. registered P@ssword123
already been
mail account email. Confirm
taken"
3. Click on "Sign Password:
up" button. P@ssword123
1. Navigate to Pass
Url:
signup page from
https://techbrain.
the sign in page. There should be
Verify if ai/users/sign_up
2. Leave the validation
user can sign Email: (empty)
SU_0 The user is email field message
up with Password:
7 on signup empty. displaying:
empty email P@ssword123
page. 3. Enter valid "Please fill out
field. Confirm
password and this field"
Password:
confirm
P@ssword123
password.
SU_0 Verify if 1. Navigate to Url: There should be Pass
8 user can sign The user is signup page from https://techbrain. validation
up with on signup the sign in page. ai/users/sign_up message
empty page. 2. Enter valid Email: displaying:
password email. kurosubin@gma "Please fill out
and 3. Leave il.com this field"

22
password password and Password:
confirmation password (empty)
field. confirmation Confirm
1. Navigate to Pass
signup page from Url:
the sign in page. https://techbrain. There should be
Verify if 2. Enter invalid ai/users/sign_up validation
user can sign email. Email: test message
SU_0 The user is
up with 3. Enter valid Password: displaying:
9 on signup
invalid password and P@ssword123 "Email must be
page.
email. confirmation Confirm in example@
password. Password: email.com
4. Click on "Sign P@ssword123 format"
up" button.
1. Navigate to Pass
signup page from
Url: There should be
the sign in page.
https://techbrain. validation
2. Enter valid
ai/users/sign_up message
Verify if email.
Email: displaying:
user can sign 3. Enter invalid
SU_1 The user is [email protected] "Password must
up with password.
0 on signup Password: be at least 8
invalid 4. Enter valid
page. Passwo1 alphanumeric
password confirmation
Confirm characters
password.
Password: with mixed
5. Click on
Passwo1 case"
""Sign up""
button.

SU_1 Verify if 1. Navigate to Url: There should be Pass


1 user can sign The user is signup page from https://techbrain. validation
up with on signup the sign in page. ai/users/sign_up message

23
different page. 2. Enter valid Email: displaying:
password in email. [email protected] "Password
confirmation 3. Enter valid Password: confirmation
password. password. P@ssword123 doesn't
4. Enter invalid Confirm match Password"
different Password:

Table 3.5 - Test Case for Login module

Test Pre- Expected


Test ID Test Steps Test Data Status
Description Condition Result
Url:
1. Navigate to sign https://techb
in page. rain.ai/users/
Verify if user 2. Enter valid sign_in User should
can login with The user is email. Email: be able to
L_01 Pass
valid on login 3. Enter valid kurosubin@ login and
credentials. page. password. gmail.com should
4. Click on Password:P be redirected
""Login"" button." @ssword12 to homepage
3
L_02 Verify if user 1. Navigate to sign Url: There should Pass
can login with The user is in page. https://techb be validation
incorrect on login 2. Enter invalid rain.ai/users/ message
email. page. email. sign_in displaying:
3. Enter password. Email: "Invalid
4. Click on test123@gm Email or
""Login"" button." ail.com password."
Password:

24
P@ssword1
23
Url:
1. Navigate to sign https://techb
There should
in page. rain.ai/users/
be validation
Verify if user 2. Enter valid sign_in
message
can login with The user is email. Email:
L_03 displaying: Pass
incorrect on login 3. Enter incorrect kurosubin@
"Invalid
password. page. password. gmail.com
Email or
4. Click on Password:
password."
""Login"" button." notp@sswor
d123
Url:
1. Navigate to sign https://techb There should
in page. rain.ai/users/ be validation
Verify if user
2. Leave the email sign_in message
can login with The user is
L_04 field empty. Email: displaying: Pass
empty on login
3. Enter password. (empty) "Please fill
email. page.
4. Click on Password: out this
""Login"" button." P@ssword1 field."
23
1. Navigate to sign Url:
in page. https://techb There should
2. Enter valid rain.ai/users/ be validation
Verify if user
email. sign_in message
can login with The user is
L_05 3. Leave the Email: displaying: Pass
empty on login
password field kurosubin@ "Please fill
password. page.
empty. gmail.com out this
4. Click on Password: field."
""Login"" button." (empty)
L_06 Verify if N/A The website Pass
"Forget The user is 1. Click on forget should
Password" on login password. redirect to

25
the
redirects to 2. Check if the
password
password page. password recovery
recovery
recovery page page loads.
page.
1. Navigate to sign
in page. The user
Verify if the
2. Click on forget receive
user receives Email:
The user is password. email with
L_07 mail with link kurosubin@ Pass
on login 3. Enter your link
to recover gmail.com
page. email. to recover
password.
4. Click on password.
"Submit".
1. Navigate to sign
Verify the user in page. There should
can send 2. Click on forget be validation
Email:
recovery email The user is password. message
L_08 asdasd83@g Pass
to on login 3. Enter non displaying:
mail.com
non-existential page. existential email. "Email not
email. 4. Click on found"
"Submit".
1. Go to the link
from your email.
2. Check if the New
The user The user
Verify if the password recovery Password:
has should be
user can reset page loads. newP@sswo
received able to
their password 3. Enter "New rd123
L_09 password update Pass
via link Password" and Confirm
recovery their
received from "Confirm Password:
link on password
email. Password" newP@sswo
their and sign in.
4. Click "Update rd123
email.
Password"

L_10 Verify if the 1. Go to the link New There should Pass

26
from your email.
2. Check if the
password recovery
user can The user be validation
page loads.
update their has Password: message
3. Enter "New
password with received newP@sswo displaying:
Password"
unmatched password rd123 "Password
4. Enter different
"New recovery Confirm confirmation
unmatched
Password" link on Password: doesn't
"Confirm
and "Confirm their demo123 match
Password"
Password" email. Password"
5. Click "Update
Password"

1. Go to the link
from your email.
Verify if the
2. Check if the
user can The user There should
password recovery New
update their has be validation
page loads. Password:
password with received message
3. Enter empty (empty)
L_11 empty "New password displaying: Pass
"New Password" Confirm
Password" and recovery "Please fill
and "Confirm Password:
"Confirm link on out this
Password" fields. (empty)
Password" their field."
4. Click "Update
fields email.
Password"

L_12 Verify if the 1. Go to the link New There should Pass


user can The user from your email. Password: be validation
update their has 2. Check if the newP@sswo message
password after received password recovery rd123 displaying:
some time (20 password page loads. Confirm "Reset
mins) recovery 3. Enter "New Password: password
of receiving link on Password" and newP@sswo token is
their password their "Confirm rd123 invalid"
recovery link Password" fields.

27
4. Click "Update
via email. email. Password"

Table 3.6 - Course and Lesson Module

Test Pre Test Expected


Test ID Test Steps Status
Description Condition Data Result
Verify if the 1. Login and User should
logged in user navigate to home be able to see
can view their User is logged page. their progress
CL_01 N/A Pass
progress bar for in and on the 2. Check if there is bar for
each available homepage progress bar below equivalent
courses. the courses. courses.
1. Login and
The progress
Verify if the User is logged complete lessons of
bar should be
progress bar in and has any course.
updated
CL_02 updates as the completed at 2. Check if the N/A Pass
according to
user completes least one lesson completion is
the lessons
the lesson. lesson of any reflected on the
completed
course progress bar.
CL_03 Verify if the 1. Login and click on N/A The total Pass
total number of list of any course number of
lessons on User is logged from the home lesson on
progress bar is in page. progress
equal to the 2. Count the total bar and that
total number number of lessons. contained by
of lessons 3. Check if the the course
contained by number of lesson on should be
the course. progress bar equal.
matches with the
total number of
lesson contained

28
by the course.
1. Start any course
Verify that the
and finish at least
"Start" on The "Start"
one
course on home should
lesson.
page changes to change into
CL_04 2. Go back to the N/A Pass
"Continue" User is logged "Continue"
home page and
after starting in of course in
check if the
the course home page.
"Start" changes to
lessons.
"Continue"
1. Start any course
Verify that the
and finish at least The next
"Next Lesson"
one lesson for the
CL_05 is functional User has N/A Pass
lesson. course should
after starting completed a
2. Click on "Next load.
the lesson. lesson
Lesson".
Verify that the The "Next
1. Go to course
"Next Lesson" Lesson"
lessons and complete
changes to should
User has all the
"Finish" after change to
CL_06 completed all lesson of the course. N/A Pass
the user has "Finish" after
lessons of the 2. Check if the "Next
completed all completion
course. Lesson" changes to
the of all the
"Finish".
lessons. lessons
The old
Verify if the old 1. Complete all progress
progress do not lesson of a course. should not
get reset User has 2. Go to Home page get lost
CL_07 when restarting completed all and start the same N/A when Pass
already lessons of a course. restarting
completed course. 3. Check if the old already
course. progress is reset. completed
course.

29
Verify if the
1. Start a different
previous
new course. The progress
progress of the User is
2. Return to home to of another
CL_08 course will not enrolled in at N/A Pass
see if old progress of course should
be lost when least one
another not be lost.
starting new course.
course is not lost.
course.
There should
1. Complete all
Verify if the be an option
lesson of a course.
user can reset User has to reset the
2. Go to Home page
CL_09 the progress of completed all N/A progress of Fail
to see if there is any
completed lessons of a already
option
course course. completed
to reset the course.
course.
1, Login and
complete lesson of
any course.
2. Check if the
Verify if the The progress
progress is reflected
progress bar should
User has on the progress
remains saved not be reset
completed at bar.
CL_10 when N/A when the Pass
least one 3. Logout and login
the user logouts user logouts
lesson of any in the same account
and logins and logins
course again.
again. again
4. Check if the
progress bar was
saved and has not
been reset.

3.4.3. Automation using selenium

Automation using Selenium involved creating test scripts in Python to automate the
testing of key features on the TechBrain.ai website. Selenium was used to interact with

30
web elements like buttons, forms, and navigation links to verify that all functionalities
worked as expected. This automation streamlined the testing process, reduced manual
effort, and ensured consistent validation across different test scenarios.

3.4.4. Mobile Automation using Appium

Automation of MyDemoApp using Appium involved writing test scripts to verify the
app's functionality on Android devices. Appium Inspector was used to inspect the app’s
UI elements, allowing the identification of XPath and ID attributes for the elements.
These identifiers were then used in the automation scripts to interact with buttons, forms,
and other UI components, ensuring consistent app performance across devices and
facilitating early detection of issues.

Figure 3.2 - Starting Appium Server

Figure 3.3 - Appium Inspector Capabilities

31
Figure 3.4 - Appium Inspector to get XPath

3.4.5. API Testing using Postman

API testing for the Trello API was conducted using Postman to validate various endpoints
and ensure accurate responses. Test scripts were written to check status codes, data
formats, and response content for API requests. Postman allowed for automated testing of
the API, ensuring reliable data exchange and functionality across different endpoints of
the Trello service.

Figure 3.5 - TrelloAPI Testing Script to Create a Card in Postman

32
3.4.6. Jira

Jira was used to report and track issues encountered during testing. Defects were logged
with detailed descriptions, including steps to reproduce, severity, and screenshots. The
issues were then assigned to the development team, with priority levels set to ensure
timely resolution. Jira facilitated efficient communication, allowing for seamless
collaboration between QA and development teams to ensure issues were addressed and
resolved promptly.

Figure 3.6 - Jira for reporting Issues

33
CHAPTER 4: CONCLUSION AND LEARNING
OUTCOMES

4.1. Conclusion

The internship at Chulo Solutions provided valuable hands-on experience in various


aspects of Quality Assurance, including manual and automated testing, API validation,
and project management. Automation of the TechBrain.ai website using Selenium, testing
of MyDemoApp with Appium, and API testing with Postman for the Trello API
contributed to a deeper understanding of testing methodologies and tools. Additionally,
utilizing Jira for issue tracking helped in managing defects and collaborating effectively
with development teams. This internship has significantly enhanced skills in software
testing and project management, laying a strong foundation for future roles in QA.

4.2. Learning Outcomes

During the internship at Chulo Solutions, a solid understanding of manual and automated
testing was gained, along with proficiency in using tools like Selenium, Appium, and
Postman. Automation of websites and mobile applications provided hands-on experience
with test scripts, and the use of Selenium in Python helped streamline testing processes
for web platforms, while Appium facilitated mobile app testing. Additionally, API testing
using Postman allowed for the validation of endpoints and response accuracy,
contributing to a better understanding of backend services and their role in application
functionality.

The internship also provided practical exposure to project management tools like Jira. By
utilizing Jira for issue tracking and defect reporting, an understanding of how to manage,
prioritize, and resolve bugs efficiently was developed. Furthermore, learning to create test
plans, define entry and exit conditions, and write detailed test cases enhanced the ability
to structure and execute effective testing strategies. This experience strengthened
problem-solving skills and provided a comprehensive understanding of the entire
software development and testing lifecycle.

34
REFERENCES

Devi, J., Bhatia, K., & Sharma, R. (2017). A Study on Functioning of Selenium
Automation Testing Structure. International Journal of Advanced Research in
Computer Science and Software Engineering .

Gorro, K. (2019). Qualitative Technology Acceptance Evaluation of JIRA in Software


Development Using Machine Learning. International Journal of Advanced
Engineering. Korea.

Kore, P. P., Jadhav, S., & Lohar, M. J. (2022). API Testing Using Postman Tool.
International Journal for Research in Applied Science and Engineering
Technology .

Regulwar, G. (2010). Software Testing Practices. International Journal of Computer


Applications.

Wang, J., & Wu, J. (2019). Research on Mobile Application Automation Testing
Technology Based on Appium. Jishou, China: IEEE.

35
APPENDICES

 Techbrain.ai Website

 MyDemoApp mobile application


 Postman API Testing

You might also like