Testing Flashcards

1
Q

Which test management tools did you use before? Do you like it? And why?

A

In my current project we are using Zephyr. Zephyr uses structured and freeform test execution cycles, and is easy to use.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is a test cycle?

A

A test cycle is a container for tests and test suites that spans multiple users and projects.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How to create test cycle in Zephyr?

A

Click on Plan Test Cycle, add and execute tests as part of those cycles.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is a Smoke Test Suite?

A

A smoke test suite combines a number of smoke tests into a small suite of tests so that when the application is ready to deliver to staging or pre-production, developers will know in a matter of minutes whether the latest version of their application is ready for further QA and review.

Smoke tests are also used at times in emergencies or when teams want to release a hot patch for their production applications.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is Testing

A

The process of verifying and validating that a software is bug free, meets all requirements with handling all the exceptional and boundary cases

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the software development life cycle?

A

Conceptual model used in project management that describes the stages involved in an information system development project, from an initial feasibility study through maintenance of the completed application.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is SDLC

A

Software development life cycle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Why is an understanding of SDLC is important to Software QA Engineers?

A

SDLC includes Requirement phase, Design phase, Coding (programming), Testing, Release (Production), Maintenance (Support).

Testing is one of the most important components of the software development lifecycle Quality assurance is the planned and systematic set of activities that ensures that software processes and products conform to requirements, standards, and procedures.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is Agile Software Development Model

A

Agile software development is a set of principles for software development in which requirements and solutions evolve through collaboration between self-organizing, cross-functional teams

The Agile movement seeks alternatives to traditional project management. Agile approaches help teams respond to unpredictability through incremental, iterative work cadences, known as sprints. Agile methodologies are an alternative to waterfall or traditional sequential development.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

When to use Agile model:

A
  • When new changes are needed to be implemented. The freedom agile gives to change is very important. New changes can be implemented at very little cost because of the frequency of new increments that are produced.
    • To implement a new feature the developers need to lose only the work of a few days, or even only hours, to roll back and implement it.
    • Unlike the waterfall model in agile model very limited planning is required to get started with the project. Agile assumes that the end users’ needs are ever changing in a dynamic business and IT world. Changes can be discussed and features can be newly effected or removed based on feedback. This effectively gives the customer the finished system they want or need.
  • Both system developers and stakeholders alike find they also get more freedom of time and options than if the software was developed in a more rigid sequential way. Having options gives them the ability to leave important decisions until more or better data or even entire hosting programs are available; meaning the project can continue to move forward without fear of reaching a sudden standstill.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Main differences between Waterfall and Agile

A

Agile

  • things are done in parallel
  • new features come every week and there is not enough time and resources to do things stage by stage
  • provides flexibility, which makes it more bug free and more inclined towards better client satisfaction.

Waterfall model

  • has no flexibility
  • does not allow any modifications once the module is completed
    • in case of changes we’d have to build the entire project from scratch
  • testing can be done only at the end of development module.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What does ‘Sprint’ in Agile development mean?

A

In product development, a sprint is a set period of time during which specific work has to be completed and made ready for review.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is the typical ‘Sprint’ duration?

A

Some people would say that the two weeks sprint has become the industry standard, but in the reality, sprint duration could be completely different. It could vary from 1 to 4 weeks and highly depends on the company, team and the project and what will work best for them.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Scrum Master responsibilities

A
  • Facilitating (not participating in) the daily standup.
  • Helping the team maintain their burndown chart.
  • Setting up retrospectives, sprint reviews or sprint planning sessions.
  • Shielding the team from interruptions during the sprint. -Removing obstacles that affect the team.
  • Walking the product owner through more technical user stories.
  • Encouraging collaboration between the Scrum team and product owner.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Product Owner responsibilities

A
  • Responsible for collecting all the information from the stakeholders and presents it in one prioritize list for the team.
  • PO is the one who can accept or reject the work.
  • Responsible for maximizing the value of the product and work of the development team.
  • Sole person responsible for managing product backlog.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

QA tester responsibilities

A
  • attend sprint-planning session. This ensures QA is in sync with development team from the start and allows QA to identify possible problem areas and risks early on.
    • attend daily stands up. This promotes a collaborative team environment, making QA feel involved and part of the team.
    • do testing throughout the entire duration of the sprint, the workload for QA should be spread out and this allows for issues to be found earlier instead of only at the end.
    • schedule a quick face to face handoff demonstration for each feature with the developer. This allows QA to see exactly how to the new feature works and is a good time for them ask the developer any questions.
    • attend sprint retrospectives. Sprint retrospectives are the opportunity to define weakness and determine solutions for them.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Typical Agile team consists of:

A
  • 1 product owner
    • 1 scrum master (project manager)
    • 5 developers
    • 2 QA
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is Software Quality Assurance?

A

Software quality is a perceptual and conditional thing.

For consumers and some positions within the software company (upper management, sales, PR, marketing) it is about customer satisfaction.

From a QA standpoint, it is about software being up to requirements.

Software QA is the process of monitoring and improving all activities associated with software development, from the gathering of requirements, design, and reviews to coding, testing, and implementation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What is software testing?

A

Software testing is a process of executing a program or application with the intent of finding software bugs.

It can also be the process of validating and verifying that a software program or application or product meets the business and technical requirements that guided its design and development works as expected and can be implemented with the same characteristic

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What is the difference between Software Testing and Software QA?

A

Testing is mainly an ‘error detection’ process focusing on improving the source code.

Software QA is ‘preventative’ aiming to ensure quality in the methods & processes at all the stages of SDLC. (“Quality Assurance” measures the quality of processes used to create a quality product).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Why is software quality not perfect?

A

You can’t find all bugs in software,

Not all bugs which are found will be fixed.

To make perfect software takes a long time but, in reality, we do have not enough time to fix all the bugs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What is adhoc testing?

A

AD HOC TESTING is a method of software testing without any planning and documentation.

The tests are conducted informally and randomly without any formal procedure or expected results.

“Monkey testing”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What is a Bug?

A

A software bug is an error, flaw or fault in a computer program or system that causes it to produce an incorrect or unexpected result, or to behave in unintended ways.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Bug report components are?

A
  1. Short summary (Bug Title)
  2. Environment
  3. Steps to reproduce
  4. Expected and actual results
  5. Attachments if applicable
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

What t is JQL?

A

JQL stands for Jira Query Language and is the most powerful and flexible way to search for your issues in Jira.

JQL is for everyone: developers, testers, agile project managers and business users.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

How you can search in Jira?

A

Using basic and advanced search.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

What is Confluence?

What kind of data you can find in Confluence?

A

Confluence is a collaboration wiki tool used to help teams to collaborate and share knowledge efficiently.

With confluence, we can capture project requirements, assign tasks to specific users, and manage several calendars at once with the help of Team Calendars add-on. You can also find in Confluence:

Private documentation about your project

Vocabulary glossary abbreviations

Environments and any other information about projects etc

How to install tools

Contact information of team members

PTO calendar

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

What is a test case?

A

A set of test inputs, execution conditions, and expected results developed for a particular objective, such as to exercise a particular program path or to verify compliance with a specific requirement.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

What are the most important components of test cases?

A

• Test case ID (assigned automatically by TC management system)
• The purpose (Title, Description) of the test case
• Instruction on how to get from the application base state to a verifiable application output or expected result
• Expected result
Execution properties:
• Actual Result
• Pass/Fail indicator

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

What is a Check List?

A

A checklist is a catalog of items/tasks that are recorded for tracking. This list could either be ordered in a sequence or haphazard.

It is often referred to as a simplified version of a test case. In some companies, this format is used instead of test cases to decrease writing maintenance time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

What is Test Suite?

A
  • a collection of test cases that are intended to be used to test a software program to show that it has a specified set of behaviors.
  • often contains detailed instructions or goals for each collection of test cases and information on the system configuration to be used during testing.

It can take any of the three states namely active, in progress and completed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

How many test cases can you create if you don’t have requirements?

A

Begin with testing it based on common sense.

When at the stage where I can ask questions, I will go and talk to people — team members first, and then the product manager.
Based on the information collected, create a test plan and try to get a second opinion on it, probably by sending my doc to PM and QA manager.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

How do you write test cases?

A
  1. Freestyle

2. Gherkin style.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

What is Smoke test (also confidence testing, sanity testing)

A

-superficial build acceptance.
- refers to the first test made after assembly or repairs to the system, to provide some assurance that the system under test will not catastrophically fail.
–is light type testing, objective is figure out, to verify that all build works, is a alive.
When the application is released in testing environment the QA team started smoke test.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

What is Sanity Testing?

A
  • smoke test is a quick test to see that after a build the application is good enough for testing
  • sanity test tells you if a particular functional area is good enough that it actually makes sense to proceed with tests on this area
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

What is Bug triage

A
  • to evaluate, prioritize and assign the resolution of defects.
  • The team needs to validate the severity of the defect, make changes as per need, finalize resolution of the defects, and assign resources.

–Mainly used in agile project management.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

What is bug Severity and Priority?

A

Bug Severity is the degree of impact that a defect has on the system.

Bug Priority is the order of severity that has impacted the system.

Severity is related to the standards and functionality of the system; priority is related to scheduling.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q

How is mobile testing and mobile app testing different?

A

Mobile testing means checking the functionalities of a mobile device while mobile app testing means testing applications running over mobile devices.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q

What are the four types of common bugs?

A

critical, block, minor, and major.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q

Give an example of common mobile bugs and how you prioritize them

A

testers work to find four types of common bugs; critical, block, minor, and major

  • a phone system crash when testing a particular feature of the device will be classified as a critical bug.

T-the GUI bugs will be categorized as minor bugs

  • functional disability of a particular feature will be submitted to a major bug list
  • Certain performance unavailability through the device is ON will fall into the block bug list
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q

What are the types of mobile applications?

A
  • Native apps are created for one specific platform or operating system.
  • Web apps are responsive versions of websites that can work on any mobile device or OS because they’re delivered using a mobile browser.
  • Hybrid apps are combinations of both native and web apps, but wrapped within a native app, giving it the ability to have its own icon or be downloaded from an app store.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
42
Q

What according to you is the importance of Usability testing?

A

Usability testing is used to check if the app is user-friendly.

It involves analyzing customer’s behavior and experience on the application to identify bugs and discrepancies.

The metrics considered for usability testing are the design of the app, response time and how intuitive it is.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
43
Q

What is the latest version of iOS?

A

IOS 15

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
44
Q

What is the latest version of Android?

A

Android 12

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
45
Q

What is the extension of Android files?

A

.apk (Android application package)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
46
Q

How would you define AVD?

A

AVD stands for Android Virtual Device.

It is an Android emulator to test applications on PCs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
47
Q

What is the extension of iOS files?

A

.ipa (iOS App Store Package)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
48
Q

What are all major networks to be considered while performing application testing?

A

You should test the application on 4G, 3G, 2G, and WIFI.

2G is a slower network, it’s good if you verify your application on a slower network also to track your application performance.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
49
Q

What are the tools based on cloud-based mobile testing?

A

Perfecto Mobile, AWS Device Farm, BrowserStack, SauceLabs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
50
Q

What is the most common problem with the emulators according to you?

A

They often fail to capture the important attributes of a device.

They have a lot of compatibility issues if no open source technology is considered.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
51
Q

How would you define a good test case?

A

Good test case: Here is an example of a good test case: install and launch the application. Try to login with user info@interview.com with password “abcd”, wait 5 seconds for the app to respond and shows you the app interface after the login.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
52
Q

How would you define a bad test case?

A

There can be two main bad test case scenarios.

The first one would be very undescriptive, e.g. install, launch and login. In this case you don’t really know what to expect exactly from the test.

The other bad test case would be a test case that tries to test many different functionalities at the same time. The result would be that you don’t concentrate on just one aspect of the app at a time and you might be missing other important functionality.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
53
Q

What metrics are considered when sanity test is performed on mobile apps?

A

The sanity test on apps can be performed based on 5 metrics:

  1. Performance on different devices.
  2. Performance in various network environments.
  3. Installation and update of apps.
  4. If the app allows calls when running in the background.
  5. Media compatibility.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
54
Q

What is WAP?

A

WAP stands for Wireless Application Protocol. Used in network apps, this communication protocol enables data access through wireless networks.

It facilitates easy connectivity between mobiles and the internet and enhances wireless interoperability.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
55
Q

How do you communicate app crashes to the developer?

A

Identify the scenario in which the app crashes.

Use a defect tracking tool to report app crashing

Steps to reproduce to bring app crashes in control.

Attach screenshots with the error message.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
56
Q

What would you do if your app works well on some devices and crashes on others?

A

Conduct compatibility tests to analyze the application’s performance on multiple devices with different network environments.

This will help in the identification of the devices on which the app crashes.

Try uninstalling and installing the app and if it still does not function properly, I would highlight the issue to the developer and suggest fixes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
57
Q

Can you name 2 apps for Android and iOS each to record crash logs?

A

To record crash logs, you can use

  • Android Studio and Eclipse for Android devices
  • iOS LogInfo and Xcode iOS devices.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
58
Q

What are the most important mobile application test cases ?

A
In my opinion, the most important mobile app test cases are:
• Usability test case.
• Battery usage test case.
• app functioning test case.
• Touchscreen test case.
• Security test case.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
59
Q

Difference between sanity and smoke testing

A

Sanity testing is a quick check of a bug fix or something specific in a new build. Shouldn’t take longer than a minute or so.

Whereas, a smoke test is a quick test of the major functionality of an application.

60
Q

Bug

A

An error, flaw or fault in a computer program that causes it to produce an incorrect or unexpected result, to behave in unintended ways

61
Q

Defect

A

An imperfection or deficiency in a work product where it does not meet its requirement or spec

62
Q

Error

A

a human action that produces an incorrect results

63
Q

Test case

A

A set of preconditions, inputs, actions, expected results , post conditions, developed based on test conditions

64
Q

Ad Hoc Testing

A

Random testing or monkey testing

method of software testing without any planning and documentation

65
Q

Functional testing

A

system is tested against the functional requirements/specs

System is functioning as it should

66
Q

Black box testing

A

you don’t know and don’t care how it works under the hood–no use of programming

67
Q

Verification

A

confirmation by exam that specified requirements have been fulfilled–are you building the right product

68
Q

Functional testing

A

system is tested against the functional requirements/specs

69
Q

Compatibility testing

A

testing to check whether your software is capable of running on different hardware, operating systems, applications, network environments or mobile devices

70
Q

Localization testing

A

product is checked to assure that it behaves according to the local culture or settings (language, currency, date and time format)

71
Q

performance testing

A

determining the speed, responsiveness and stability of a software program or device under a workload.

Automated testing

72
Q

Compatibility testing

A

to check whether your software is capable of running on different hardware, operating systems, applications, network environments or mobile devices

73
Q

security testing

A

determines if an information system protects data and maintains functionality as intended

74
Q

grooming

A

an open discussion between the product owner and the development team

75
Q

scrum

A

framework for project management that emphasizes teamwork, accountability and iterative progress toward a well defined goal

76
Q

JIRA

A

tool for bug/issue tracking and project management

77
Q

software bug

A

error or flaw in a computer program that causes it to produce an incorrect or unexpected result or to behave in unintended ways

78
Q

Bug triage

A

process where each bug is prioritized based on it severity, frequency, risk, etc by PO,BA, QA

79
Q

Bug report must have:

A
Browser using
Operating system use
Error messages if any
Steps taken to reproduce
Screen shot with arrows/etc on it
80
Q

Severity

A

the degree of impact on the development or application

Priority is the order in which a defect should be fixed

81
Q

Test case

A

a set of actions executed to verify a particular feature or functionality of the software and clarifies what you are doing to test the system

82
Q

Test case

A

measures the quality of the application

83
Q

Difference between a test case and a defect:

A

A defect/bug is written when something fails A, B and C didn’t happen and you went to F

A Test case is written to pass or work in a valid manner (negative or positive) verify that A, B and C happen

84
Q

Bugs are

A

failed test cases

85
Q

Write a Test case

A

Go into Jira
Hit Create button
Select issue type to be “test”
Scroll down to Zeyphyr test step section (if you don’t see it go into “Configure fields” and select all)

86
Q

Test cases should

A

= 3-5 steps

87
Q

Smoke testing

A

builds verification of software by ensuring important functions work and the build is stable

small set of test cases to ensure that most of the important functions work/shows if a build is stable enough to proceed with further testing/Bugs are usually P1 critical priority

88
Q

Test plan

A

the blueprints for testing and making sure you are testing what you should be testing

89
Q

Sanity Testing

A

testing performed after the software build to ascertain if bugs have been fixed and no further issues have been introduced due to changes

90
Q

Smoke VS Sanity

A

Smoke is a quick test of major functionality while sanity is a quick test of particular functionalities /features /fixed bugs

91
Q

Mind Mapping

A

a graphical representation of ideas and concepts using creative /logical way of advanced note-taking using symbols, colors, minds shapes, words, lines and images. (Coggle)

92
Q

Regression testing

A
  • all integration test cases
  • all complex test cases
  • boundary value test cases
  • sample of successful test cases
  • same of failure test cases
93
Q

Regression test selection

A
  • Don’t re-execute the entire test suite–select parts of the test suite to be run
  • Reusable test cases
  • obsolete test cases
  • reusable test cases can be used in succeeding regression cycles
  • obsolete test cases can’t be used in succeeding cycles
94
Q

Gerkin

A

-used to write test cases for regression testing using advanced style

95
Q

How to write Gherkin style test cases

A

capitalized when inputting into Jira for GIVEN, WHEN,THEN, and AND.

96
Q

To work with the DOM or CSS

A
  • right-click an element on the page and select Inspect to jump into the Elements panel
  • Or press Command+Option+C (Mac) or Control+Shift+C (Windows, Linux, Chrome OS)
97
Q

to see logged messages or run JavaScript

A

press Command+Option+J (Mac) or Control+Shift+J (Windows, Linux, Chrome OS) to jump straight into the Console panel.

98
Q

to save console log

A
  • Right click inside the Console tab

* Click save as

99
Q

In general, use the Network panel when you need to make sure that resources are being downloaded or uploaded as expected. The most common use cases for the Network panel are:

A

Making sure that resources are actually being uploaded or downloaded at all.

Inspecting the properties of an individual resource, such as its HTTP headers, content, size, and so on.

Time. How long the request took.

100
Q

Accessibility audit

To audit a page:

A

Go to the URL that you want to audit.
In DevTools, click the Lighthouse tab. DevTools shows you various configuration options.
Using the current tool you can check if your website is considered accessible if it can be perceived, understood, navigated and interacted with by everyone, whether or not they happen to have disabilities.
Web accessibility means that websites, tools, and technologies are designed and developed so that people with disabilities can use them

101
Q

End-to-end testing

A

used to test whether the flow of an application is behaving as expected right from start to finish. The purpose of performing end-to-end testing is to identify system dependencies and to ensure that the data integrity is maintained between various system components and systems.

102
Q

Key Steps in Setting up End-to-End Tests:

A

• Review the requirements you’ll be using end-to-end testing to validate.
• Set up the test environments and outline the
hardware/software requirements.
• Define all the processes of your systems and their integrated subsystems.
• Describe the roles and responsibilities for each system
• Outline the testing methodologies you plan to use and any testing standards (i.e., language, tools).
• Create the requirements for tracking and designing your test cases.
• List the input and output data for each system.

103
Q

What is SQL?

A
  • Structured Query Language

- a database computer language, designed to retrieve and manage data, create and modify DB schema, etc.

104
Q

What is a Database?

A

Systematically organized or structured repository of indexed information that allows easy retrieval, updating, analysis, and output of data.

105
Q

What is a Query?

A

your request to the database to retrieve information.

106
Q

What is the DBMS?

A
  • Database Management System

- software that controls the organization, storage, retrieval, security and integrity of data in a database.

107
Q

What is a Primary Key?

A
  • a unique identifier of every record in the database table
  • a column in a database where each row has a unique value.
  • Each table has only one primary key
  • No NULL values are allowed.
  • in a list of American citizens, the column with social security numbers (SSN) would be a Primary Key
108
Q

Unique Key

A
  • a column or group of columns that together hold unique values.
  • A table can have more than one unique key.
  • in a list of American citizens, the first and last name columns combined with phone number would be a Unique Key.
109
Q

What is a SQL Join

A

an instruction to combine data from two sets of data

110
Q

SQL Join Example

A
  • find all orders placed by a particular customer.

- do this by joining the customers and orders tables together using the relationship established by the customer_id key.

111
Q

Inner Join

A

-return rows when there is at least one match of rows between the tables.

112
Q

Inner Join

A

return rows when there is at least one match of rows between the tables.

113
Q

Right Join

A

return rows that are common between the tables and all rows of the right-hand side table. Simply, it returns all the rows from the right-hand side table even though there are no matches in the left-hand side table.

114
Q

Left Join

A

return rows that are common between the tables and all rows of the left-hand side table. Simply, it returns all the rows from the left-hand side table even though there are no matches in the right-hand side table.

115
Q

Full Join

A

return rows when there are matching rows in any one of the tables. This means that it returns all the rows from the left-hand side table and all the rows from the right-hand side table.

116
Q

What are Tables and Fields?

A

A Table is a set of data that is organized in a model with Columns and Rows.

Columns can be categorized as vertical, and Rows are horizontal.

A Table has a specified number of Columns called

Fields but can have any number of Rows that are called a record.

117
Q

What is a Stored Procedure?

A

a function that consists of many SQL statements to access the database system.

118
Q

What is the DELETE Command

A

A DELETE command is used to remove rows from the table, and a WHERE clause can be used for a conditional set of parameters.

Commit and Rollback can be performed after a delete statement.

119
Q

What is the TRUNCATE Command

A

The TRUNCATE command removes all rows from a table, but the table structure and its columns, constraints, indexes, and so on remain.

120
Q

What is a Constraint?

A
  • can be used to specify the limit on the data type of table.
  • A constraint can be specified while creating or altering the table statement.
Sample of constraints are:
NOT NULL
CHECK
DEFAULT
UNIQUE
PRIMARY KEY
FOREIGN KEY
121
Q

What is CLAUSE?

A

A SQL clause is defined to limit the result set by providing the condition to the query.

122
Q

What is API

A

Application Programming Interface

  • acts as an intermediary layer that processes the data transfer between systems
  • Using FB to send an IM
123
Q

What are the 2 types of API?

A

1- SOAP-simple object access protocol-defines standards like security and how to send messages
2-REST-representational state transfer-defines a set of functions for sending requests and receiving responses (HTTP protocol methods)

124
Q

What is REST?

A
  • acronym -Representational State Transfer

- first presented by Roy Fielding in 2000 in his famous dissertation.

125
Q

6 architectural constraints of REST are?

A
  1. Client-Server – By separating the user interface concerns from the data storage concerns, we improve the portability of the user interface across multiple platforms and improve scalability by simplifying the server components.
  2. Stateless – Each request from the client to server must contain all of the information necessary to understand the request, and cannot take advantage of any stored context on the server. Session state is therefore kept entirely on the client.
  3. Cacheable – Cache constraints require that the data within a response to a request be implicitly or explicitly labeled as cacheable or non-cacheable. If a response is cacheable, then a client cache is given the right to reuse that response data for later, equivalent requests.
  4. Uniform Interface – By applying the software engineering principle of generality to the component interface, the overall system architecture is simplified and the visibility of interactions is improved. In order to obtain a uniform interface, multiple architectural constraints are needed to guide the behavior of components. REST is defined by four interface constraints: identification of resources, manipulation of resources through representations, self-descriptive messages, and hypermedia as the engine of the application.
  5. Layered System – The layered system style allows an architecture to be composed of hierarchical layers by constraining component behavior such that each component cannot “see” beyond the immediate layer with which they are interacting.
  6. Code on Demand (optional) – REST allows client functionality to be extended by downloading and executing code in the form of applets or scripts. This simplifies clients by reducing the number of features required to be pre-implemented.
126
Q

What is API Testing ?

A

–a software testing type that validates the Application Programming Interface (API).

– purpose of API Testing is to check the functionality, reliability, performance, and security of the programming interfaces

–you use software to send calls to the API, get output, and note down the system’s response.

127
Q

REST uses a specific HTTP methods

What are the most common HTTP methods:?

A

A GET request fetches a record from a database
A POST request adds a new record to a database
A PUT request replaces a record with a new one
A PATCH request replaces part of a record with new information
A DELETE request removes a record from a database

128
Q

What is Postman?

A

Postman is an excellent choice to test API’s for those who do not want to deal with coding in an integrated development environment, using the same programming language as a developer would use.

129
Q

What is Soap UI?

A

With SoapUI, users can get the full source document and embed their preferred set of features, in addition to those listed below:

Create a test quickly and easily using drag-and-drop and point-and-click techniques
Powerful data-driven testing: Loaded from files, databases and Excel, so they can simulate user and API interactions.
Create complex scripts and support asynchronous testing

130
Q

What is Jmeter?

A

JMeter (a open source software) is widely used for functional testing of APIs

Supports playback of test results
Automatically handles CSV files
Can be used for both static and dynamic resource performance testing

131
Q

What is ApiGee?

A

Apigee is a cross-cloud API testing tool

Allows you to develop, monitor, deploy and scale APIs
Identifies problems by tracking API traffic, error rates and response times
Designed specifically for digital business and data-intensive tasks on mobile API platforms and applications that manage it

132
Q

What is Assertible?

A

Assertible is an API testing tool that focuses on process automation and reliability.

Provides automated API testing at every stage of the software integration and delivery process
Provides support for ongoing API tests after application deployment
Supports authentication of HTTP responses with out-of-the-box error-free confirmation statements

133
Q

What is Katalon Studio?

A

Katalon Studio supports SOAP and RESTful requests with different types of commands (GET, POST, PUT, DELETE).

Support for a combination test between UI and API verifications
Support for testing both SOAP and RESTful requests
Can be used in both automated and exploratory testing

134
Q

Why Use Postman?

A
  • over 4 million users
    1. Accessibility - To use Postman, you just need to log into your account making it easy to access files anytime, anywhere as long as a Postman application is installed on the computer.
  1. Use of Collections - Postman lets users create collections for their API calls. Each collection can create subfolders and multiple requests. This helps in organizing your test suites.
  2. Collaboration - Collections and environments can be imported or exported making it easy to share files. A direct link can also be used to share collections.
  3. Creating Environments - Having multiple environments aids in having less repetition of tests as one can use the same collection but for a different environment. This is where parameterization will take place, as we will discuss in further lessons.
  4. Creation of Tests - Test checkpoints, such as verifying for successful HTTP response status, can be added to each API call to help ensure test coverage.
  5. Automation Testing - Through the use of the Collection Runner or Newman, tests can be run in multiple iterations saving time for repetitive tests.
  6. Debugging - Postman console helps to check what data has been retrieved making it easy to debug tests.
  7. Continuous Integration - With its ability to support continuous integration, development practices are maintained.
135
Q

What is an API?

A
  • API is an acronym for Application Programming Interface.
  • An API is a set of routines, protocols, and tools for building Software Applications.
  • APIs specify how one software program should interact with another software program.
136
Q

What is API Testing?

A
  • a type of software testing that involves testing APIs directly and also as part of integration testing, to check whether the API meets expectations in terms of functionality, reliability, performance and security of an application.
  • main focus will be on the business logic layer of the software architecture.
  • can be performed on any software system which contains multiple APIs.
137
Q

What is Rest API?

A

–stands for Representational State Transfer.

–a set of functions helping developers in performing requests and receiving responses

  • Interaction are made through the HTTP Protocol in REST API.
138
Q

What are the common tests that are performed on APIs?

A
  1. Verify whether the return value is based on the input condition. The response of the APIs should be verified based on the request.
  2. Verify whether the system is authenticating the outcome when the API is updating any data structure.
  3. Verify whether the API triggers some other event or request another API.
  4. Verify the behavior of the API when there is no return value.
139
Q

What exactly needs to be verified in API Testing?

A

with API Testing, we send a request to the API with the known data and we analyse the response.

  1. Data accuracy;
  2. HTTP status codes;
  3. Response time;
  4. Error codes in case API returns any errors;
  5. Authorization checks;
  6. Non-functional testing such as performance testing and security testing.
140
Q

Name some tools used for API Testing

A

Postman, Katalon

141
Q

Some of the more popular API examples are:

A
  • Google Maps API
  • YouTube
  • Twitter
  • Amazon Advertising API
142
Q

Name some of the most commonly used HTTP methods

A

GET: It enables you to retrieve data from a server
POST: It enables you to add data to an existing file or resource in a server
PUT: It lets you replace an existing file or resource in a server
DELETE: It lets you delete data from a server
PATCH: It is used to apply partial modifications to a resource

143
Q

What is the API test environment?

A

–a complex method where the configuration of the server and database is done as per the requirements of the software application.

–Graphical User Interface (GUI) is not available in this form of testing.

–After installation, the API is verified for its proper functioning.

–In this process, the initial environment that invokes API is being set up with a defined set of parameters so that test results can be examined.

144
Q

What is an API collection?

A

–a grouping of requests.

145
Q

What is the Environment in Postman?

A

–a set of key-value pairs.

–An environment helps us to differentiate between the requests.