Friday, December 24, 2021

USABILITY Testing

 In this article, we will see about Usability Testing and how it will performed and significance of it.

Firstly , What exactly is Usability Testing?

Testing the user friendliness of an application is called Usability testing.

Let us start with an example such that we have two applications A & B which are different but doing the same job. In this, we see which one is user friendly.

Given below are some of the parameters we look into for testing. In this most of them are not measurable,

ü  Speed

ü  Help

ü  Navigation should be simple

ü  Compatibility

ü  Look & feel

ü  Features

ü  Location of components

One important parameter other than the above said parameters is “Effort needed to learn the application”. 

Suppose in the example, we understand the software A in 2 hrs, but we take 4hrs to understand B. Let us see different cases here,

®    since we understand A in 2hrs, it becomes user friendly compared to B

®   suppose look & feel is not good for A. In this case though, we understand A in 2hrs, we cannot say that A is user friendly.

®    Therefore, we look into many parameters before we say user friendliness of a software

 What is LOOK & FEEL?

The application should be such that it should be pleasant looking [ suppose if we have red color text in yellow background, definitely we don’t feel like using it ] and make a feel to the end-user to use it.

 Let us now see an example of Usability testing:

1) Consider some of the examples below,

In this example, we see the Inbox – the most frequently used feature is not kept in the right place.

End – users therefore search for the Inbox & after sometime, they find the Inbox lying somewhere down.

This type of application may lose the customers because they are less user – friendly.

How to overcome this,

See to it that the important features are placed in the left navigation bar and top navigation bar (This is normally followed)

Then we should see whether frequently used features are easily accessible (like Inbox, Compose Mail etc)

While testing, we therefore have to list all the important features before we start testing an application.

2) Consider the sketch shown below,

The end – user to draw the above sketch every time, he clicks Tools -> Draw -> Line for each line and finally he clicks Tools -> Draw -> Line to complete the sketch.

In this , we see the end-user wants to draw a simple sketch, but he wastes his time in clicking each time the Tools -> Draw -> Line for the sketch. This becomes a waste of time for the end-user.

Therefore, while testing , we must make user friendly of the application by creating Tool bar which makes the job simple by clicking on the necessary tools instead of going & clicking each time Tool -> Draw -> Line

How to conduct Usability testing? (OR) What process will  follow to do Usability testing?

Prepare OR derive checklist (i.e, what are the points to be checked). If we don’t prepare a checklist, we may miss some features in the application.

For Usability testing, we should prepare a genuine checklist specific to the product we develop.

 Example of a checklist for an application,

ü  For this application, one of the checklists includes color of already checked link should be changed to red

ü  All the images should have alt tag(Tooltip)

ü  All the pages should have link to Homepage

ü  Login feature should have Forgot Password link

 Like the above checklist, we can derive as many checklists as possible based on the application (or) product. While deriving checklist, we should derive a common checklist which can be executed for all pages.

Hope the article helped you to understand about Usability Testing.

Thanks for reading my Blog, 

Hope you liked it.

Happy Testing!!!!


 



 

Saturday, November 6, 2021

Characteristics of Good Test Case!!!!

 

  1. Test cases should have very good test case coverage.
  2. Test Cases should have good coverage with less no. of steps.
  3. Test Case should be written by applying test case design techniques.
  4. Test Case should be simple to understand.
  5. If test cases given to any new Tester, he/ she should be able to execute the test cases without asking any questions or clarifications.
  6. Test Case should be written in test case template.
  7. Test Case should be consistent, means flow or sequence should be good. 
  8. Test Case should consists of both positive and negative scenarios.
  9. Test cases should be able to catch the defects.
  10. Test cases should not be redundant, means no duplicates.
  11. Test Cases should be very easy to convert into Automation scripts.

These are the characteristics of Good Test Case.

Thanks for reading my article.

Happy Testing !!!!

Tuesday, October 26, 2021

SDLC- Software Development Life Cycle!!!!!

SDLC is a procedure to develop the software.

It is a step by step procedure or standard procedure to develop a new software. It starts when a person or a company want to start with new project or want to build a new software, then they should follow SDLC.

Any SDLC should result in a high quality system that meets or exceeds customer expectations, reaches completion within time and cost estimates, works effectively and efficiently and is inexpensive to maintain and cost effective to enhance.

When we say we should follow SDLC, we should know what happens if we don't follow SDLC....?

1. If we don't follow SDLC, we will not get to know how many engineers are required to work for the project or team.

2. We will not get to know how much cost should be invested to work on the project.

3. There will be no supporting requirement documents and chances are there, we might delay in releasing software.

Below diagram contains the stages of SDLC:

There are types of SDLC models based on the need of the client or customer namely,

1. Waterfall model

2. Spiral model

3. V & V model

4. Derived model

5. Prototype model

6. Hybrid model

7. Agile model

The above flow differs for each of the SDLC model based on various parameters.

In detail, each model can be explained separately.

Thanks for reading and Hope you liked it!!

Happy Testing !!!!!

Wednesday, September 1, 2021

ISTQB Foundation Level sample Questions Set -I

 The below questions are related to Chapter-1 :Fundamentals of testing

Question 1:

A company recently purchased a commercial off-the-shelf application to automate their bill-paying process. They now plan to run an acceptance test against the package prior to putting it into production. Which of the following is their most likely reason for testing? 

a. To build confidence in the application. 

b. To detect bugs in the application. 

c. To gather evidence for a lawsuit. 

d. To train the users. 

Question 2 :

According to the ISTQB Glossary, the word 'bug' is synonymous with which of the following words?

a. Incident b. Defect c. Mistake d. Error 

Question 3 :

According to the ISTQB Glossary, a risk relates to which of the following? 

a. Negative feedback to the tester. 

b. Negative consequences that will occur. 

c. Negative consequences that could occur. 

d. Negative consequences for the test object. 

Question 4: 

Ensuring that test design starts during the requirements definition phase is important to enable which of the following test objectives? 

a. Preventing defects in the system. 

b. Finding defects through dynamic testing. 

c. Gaining confidence in the system. 

d. Finishing the project on time.

Question 5 :

A test team consistently finds between 90% and 95% of the defects present in the system under test. While the test manager understands that this is a good defect-detection percentage for her test team and industry, senior management and executives remain disappointed in the test group, saying that the test team misses too many bugs. Given that the users are generally happy with the system and that the failures which have occurred have generally been low impact, which of the following testing principles is most likely to help the test manager explain to these managers and executives why some defects are likely to be missed? 

a. Exhaustive testing is impossible 

b. Defect clustering 

c. Pesticide paradox 

d. Absence-of-errors fallacy 

Question 6 :

According to the ISTQB Glossary, regression testing is required for what purpose? 

a. To verify the success of corrective actions. 

b. To prevent a task from being incorrectly consid ered completed. 

c. To ensure that defects have not been introduced by a modification. 

d. To motivate better unit testing by the program mers.

Question 7 :

Which of the following is most important to promote and maintain good relationships between testers and developers? 

a. Understanding what managers value about testing. 

b. Explaining test results in a neutral fashion. 

c. Identifying potential customer work-arounds for bugs. 

d. Promoting better quality software whenever possible. 

Question 8 :

Which of the statements below is the best assessment of how the test principles apply across the test life cycle? 

a. Test principles only affect the preparation for testing. 

b. Test principles only affect test execution activities. 

c. Test principles affect the early test activities such as review. 

d. Test principles affect activities throughout the test life cycle.


Answers:

1. A  2. B 3. C 4. A 5. A 6. C 7. B 8. D

Saturday, July 17, 2021

Encapsulation

 


Encapsulation is one of the OOPs concepts in Java which protects the data members of the class. Java is by default encapsulated where we cannot declare a variable outside the class. Java language provides four access specifiers to achieve encapsulation.

Restricting the direct access and providing indirect access through public services called getters and setters methods, is called as encapsulation.

Hiding the internal state and requiring all interaction to be performed through an object's publicly exposed methods is known as Encapsulation.

How to achieve Encapsulation:

By using access modifiers we can achieve.

1. declare class variables as private.

2. define public getters and setters methods to access & update the value of a private variable.

Example code for Encapsulation:

https://github.com/SripriyaPKulkarni/OOPs-Encapsulation

Application of Encapsulation in Framework:

1. All the classes in a framework are an examples of Encapsulation.

2. All the data members declared in POM classes using @FindBy and initializing the data members using Constructor to utilize the data members in methods in test folder.

Wednesday, June 23, 2021

Why SelectorsHub over DevTools & other XPath Plugin?


Yes we all prefer to write our own XPath & use DevTools to write & verify XPath.

But unfortunately we never realised that DevTools doesn’t give the right information about XPath as it also gives the string match and due to other functionality. DevTools breaks in case of nested shadow dom, nested iframe, generate wrong selectors for svg etc.

And when we use XPath plugins to get auto generated XPath, most of the plugins used to break in many cases like shadow dom, iframe, nested iframes, nested shadow dom and svg etc. Also they don’t generate robust relative xpath which could be used in script. So here at the end we found ourselves wasting time in place of saving.


Here SelectorsHub comes as a package which solves all the locators problem and helps in learning along with time saving.


SelectorsHub is a FREE browser plugin which is available for all browsers. It has amazing innovative features which makes it stand out from the other XPath plugins.


  1. Auto suggests the locator's functions while writing own selector like a Smart Editor which helps a lot in learning along with time saving.

  2. Error handling. Shows the proper error message for invalid XPath.

  3. Supports Shadow DOM, nested Shadow DOM.
  4. Supports Iframe, nested iframes, frame & nested frames.
  5. Supports Shadow DOM inside iframe.
  6. Debugger feature to inspect invisible elements.
  7. We can generate multiple selectors for many elements along with code which saves a huge amount of time.
  8. Supports all browsers and regular updates on all browsers.
  9. Best part it’s creator is very approachable and takes the user’s feature request on priority.
  10. There are many more features, please refer to the detailed tutorial to learn more about it.


Download link-

https://selectorshub.com/

Detailed Tutorial-
https://www.youtube.com/watch?v=jV84DRg96qs

Saturday, June 12, 2021

Test Cases for Triangle!!!!

1. To check that whether the figure has 3 sides.

2. To check whether it has 3 angles.

3. To check whether any of the angle is 90 degrees.

4.To check whether any of the two sides are equal.

5. To check whether all the sides are equal.

6. To check whether any of the two sides squares sum is equal to  other side.

7.To check whether all the sides are not equal.

8. To check the length of the triangle.

9. To check the breadth of the triangle.

10.To check the height of the triangle.

11. To check whether all the angles sum is 180 degrees.

12.To check whether any of the two angles is less than 90 degrees.

13.To check whether the triangle has three vertices.

14. To check whether the triangle is having only 3 straight lines with no overlap.

15. To check shape of the triangle.


Monday, April 19, 2021

Test Cases for AirCooler!!!!

 

1. To check that when user decreases the temperature, it should be more cool.

 2. To check that when user increases the temperature, it should be more hot.

 3. To check that AC is having the brand as per requirement.

 4. To check that AC can be fitted  to wall.

 5. To check that AC can be fitted  to door or wall.

 6. To check that AC is working for different voltages.

 7. To check that AC should work for UPS Power supply.

 8. To check that AC is working if user gives the connection through a extension box.

 9. To check the size of AC.

10. To check whether user is able to ON the AC by remote.

11. To check whether user is able to OFF the AC by remote.

12. To check the color of the AC is as per requirement.

13. To check that if user puts on water on AC - check the condition of it.

14. Cover the AC with cloth - switch ON the AC - check whether it is working.

15. Cover the AC with plastic cover - switch ON the AC - check whether it is working.

16. To check whether AC is working for swing mode.

17. Switch ON the AC for continuously for certain period of time - check whether it is working.

18. Switch ON the AC - open all the doors and windows of the room - check whether user can feel cool.

19. Switch ON the AC and check whether indicator is working as expected.

20. To check whether led light is blinking as per instructions given by user via remote.



Sunday, April 18, 2021

Test Cases of Chair✔!!!!

 

1. To check whether the chair can hold a person on it.

2. To check whether the chair has four legs.

3. To check whether the chair can be used to place on flat floor.

4. To check whether the chair can be used to place on stones.

5. To check whether the chair can hold or used to sit more than one person.

6. To check whether the chair is made of fiber.

7. To check the color of the chair is as per requirement.

8. Take the chair - remove one leg - try to sit - check whether the chair can be used for sitting.

9. Take the chair - remove or cut two legs - try to sit - check whether the chair can hold.

10. Take the chair - remove all four legs - check the shape of the chair.

11. Take the chair - put fire on it - check the condition of the chair.

12. Take the chair - put some water on it - check the condition of the chair.

13. To check that the chair is used to sit in different environments like hot & cold.

14. To check the design of the chair is as per requirement.

15. To check whether the chair can float on water /swimming pool.

16. To check the dimensions of the chair is as per requirement.

17. To check whether chair is draggable.

18. To check the weight of the chair.

19. To check the amount of weight , chair can hold.

20. To check whether the chair melts on excess sunlight if it is fiber chair.


Friday, April 16, 2021

Test Cases of Water Bottle🍼!!!!!

 

1. Take the water bottle - open the cap - fill the water - check whether the bottle can hold.

 2. Take the water bottle - open the cap - fill it with oil - check whether the bottle can hold.

 3. Take the water bottle - open the cap - fill half the bottle with water - fill half the bottle with oil - check whether the bottle can hold.

 4. Take the water bottle - open the cap - fill it with water - Keep the bottle in fridge - check after some   time whether it is cooled.

 5. Take the water bottle - open the cap - refit the cap - check whether it is properly fitted.

 6. Take the water bottle - open the cap - keep it in sunlight - check the condition of the water bottle whether any changes are there.

 7. Take the water bottle - open the cap - fill the water - shake it well - check the condition of the bottle.

 8. To check the color of the bottle.

 9. To check the manufacturer material of the bottle.

10. To check whether the bottle is glass, steel, fiber or plastic.

11. Take the bottle - Keep it in fire - check whether the bottle losses its color.

12. Take the bottle - open the cap - check whether the cap is rotatable.

13. Take the bottle - crush it - check the condition of the bottle.

14. Take the bottle - open the cap - check whether it has sipper to drink.

15. Take the bottle -fill it with water - remove water from bottle - keep it on stove - check whether the          bottle is ash.

16. Take the bottle - check the dimensions of the bottle whether it is as required.

17. Take the bottle -fill it with water - keep it on stove - check whether the bottle is ash.

18. Take the bottle - keep it on stove - check whether the bottle is ash.

19. Take the bottle - check the shape of the bottle.

20. Take the bottle - check whether the bottle can be placed on any surfaces.

Saturday, March 27, 2021

Types of Requirements!!!

 All Business requirements are classified into two types:

1. Functional Requirement

2. Non Functional Requirement



We shall see each of them with example.

1. Functional requirement: 

    Functional requirements describe the behaviour of the system. Usually, functional requirement is from 

    Client to Developer side that is regarding functionality of the application. It tells about how each and 

    every feature or functionality should work.

    Example:  In Gmail application, when user clicks on 'Compose' button , compose page should be 

    displayed.

2. Non Functional requirement:

    Non Functional requirement describes the operation of a system rather than specific behaviour of the 

    system. It includes requirement for performance, scalability, usability, reliability, recoverability ,

    security and stability. 

    Non Functional requirement is from Developer to Client, the requirement is not given by client 

    but it is provided by developers to run the system smoothly.

     Example: If  20000 users click on 'Compose' button , then compose page is displayed within 1 

     second.

Thanks for reading!!!!!


Monday, March 1, 2021

Test Case Design Techniques

 In this blog, I am writing about Test Case Design Techniques which is very important topic for every Tester.

What is Test Case Design Technique?

It is the technique which is applied while writing test cases in order to improve text case coverage.

Types of Test Case Design Techniques:

1.      Error Guessing

2.      Equivalence Partitioning/ Equivalence Class Partitioning

3.      Boundary Value Analysis (BVA)

4.      Decision Table Technique

5.      State Transition Diagram/ Technique

Now we shall see each Test Case Design Technique.

1. Error Guessing:

1    In this technique, we will try to guess the errors and derive more scenarios. Error Guessing depends on the analytical thinking of every tester. Here, we test only negative input or invalid values and try to guess the error message in the application.

Example: Amount Text field -It should accept only positive integers

Invalid / negative inputs             Error Message

156.45                                  -      Decimal Values are not allowed

Hundred                               -        Only alphabets are not allowed

2. Equivalence Partitioning:

2.      In this technique, we have two types:

1.      Pressman rule

2.      Practice Method

1.Pressman rule:

Rule 1: If the input is range of values, then design test cases for one valid, two invalid values.

Example: Amount Text field – as per requirement range should be 100-5000

Test Case: valid-2000, invalid -90,6000

Rule 2: If the input is set of values, then design test case for one valid and two invalid values.

Example: Search Text Field – Product ID list has 27, 51, 68 as ids.

Test Case: valid 51, invalid 23, 69

Rule 3: If the input is Boolean, then design test cases for both true & false values.

Example: If there are radio buttons for male and female, then both the radio buttons should be tested. 

3.      Practice Method:

If the input is of range of values, then divide the range of values into Equivalent parts & test for all the values & also make sure that we are testing for at least two invalid values.

Example: Requirement for Amount Text field : 100 to 5000

Test case: valid -100,1000,2000,3000,4000,5000

                   Invalid-90,6000

If there is a deviation between range of values then we go for Practice method. If there is no deviation between range of values, then we go for Pressman rule. By looking into the requirement, we will get to know whether there is deviation in between the range of values or not.

3. Boundary Value Analysis (BVA):

    If the input is range of values between A to B then design Testcases for A, A+1, A-1 and B, B+1, B-1.

     Example: Requirement for Amount Text field: 100 to 5000

     Test Case:  + ve: 100,101,4999,5000

                         -ve: 99,5001

    We go for this technique because chances are more that developers make mistake while writing code for Condition operators. So, chances of finding defects will be more near the boundaries that is the reason we need to always write Test Cases by applying BVA rule.

4. Decision Table Technique:

    In this technique, we check for multiple conditions, combinations & rule criterias.

    Formula:  2no of conditions   =rule criterias/scenarios

Example: A person is applying for credit card and there is discount on purchase along with coupon code.

Requirement: If the person is new customer and opening credit card account, then bank will give 15 % of discount on the purchase. If the person is old customer and having loyalty card then bank will give 10 % discount on the purchase. If he is having coupon code , then he will 20 % discount.

Condition: Coupon code cannot be used together with new customer discount, if he is using also then highest discount will be considered.

There are totally 3 conditions: 1. New Customer discount

                                                 2.Old Customer discount

                                                 3. Coupon code Discount

 Then 23 = 8 rules/scenarios.

No of conditions

Rule 1

Rule 2

Rule 3

Rule 4

Rule 5

Rule 6

Rule 7

Rule 8

New customer discount(15 %)

T

T

T

T

F

F

F

F

Old Customer discount(10 %)

T

T

F

F

T

T

F

F

Coupon code discount(20%)

T

F

T

F

T

F

T

F

Overall discount %

No

No

20%

15 %

30 %

10%

20 %

No

 Based on the table above, we write scenarios for the conditions.

5. State Transition Diagram / State Flow Diagram

In this technique, we will check for different states on screens or pages of the machine or system or software is properly displayed or not.

Example : ATM Cash Withdrawl Flow

In the above flow diagram, each flow for the cash withdrawl is drawn so that test scenarios can be easily created.

Hope you liked my blog!!!!

Thanks for reading!!!!!!!!!!


Monday, February 15, 2021

How a Java Program will get executed?


We will be writing the code in the notepad/Edit plus which is also called as source file which will be in the human readable format & save the file with .java extension.

Once after saving, to convert into machine readable format, need to perform two operations: Compilation(javac) & Interpretation(java).

The compiler will receive .java file as an input & generates .class file. The compiler will check for the following: Syntax ,Rules and translates from .java file to .class file.

.class file is a byte code which is also called as Intermediate code which cannot be read by human nor machine. This .class file will be given as an input to the interpreter which will generate the binary code & given as an input to the Operating system, O.S will perform the operation & gives the output.

Now Let us see about JDK, JRE, JVM & JIT:

What is JDK?

JDK stands for Java Development Kit. It is a development kit which has all the utilities & the library files to develop a java software.

What is JRE?

JRE stands for Java Runtime Environment. It is an environmental setup which is provided to run the java program. Since, JRE is installed in each & every electronic device, the .class file can be executed on any device. Hence, Java is called as platform independent language.

What is JVM?

JVM stands for Java Virtual Machine. It is a virtual machine which doesn’t exist physically & it is whole responsible to execute the java program.

What is JIT?

JIT stands for Just In Time.

JIT converts .file to binary format. The interpreter does the following:

  1. Reads line by line
  2. executes
  3. translates form .class file to binary format.

The program might be syntactically correct, if it is an abnormal statement like 1/0, it will throw Run Time Error/Exception(RTE).

All the Java programs will execute line by line from left to right.

Thanks for reading this article!!!

Hope you liked!!!


Friday, February 5, 2021

WBT & BBT...!!

What is White Box Testing?
Testing the each & every line of code is called as White Box Testing. Developers will do White Box Testing. Since the code is visible ,it is called as White Box Testing or Open Box Testing.

What is Black Box Testing?
Testing/ Verifying the functionality or behaviour of an application against customer requirement specification called as Black Box Testing or Functionality Testing or Behavioural Testing.
Testers will do Black Box Testing. Since the code is invisible , it is called as Black Box Testing.

Below are the Differences between WBT & BBT:

White Box Testing

Black Box Testing

It is done before software is ready.

It is done after software is ready.

Code is visible

Code is not visible

Here, developer will test the logic of the code.

Here, tester will test the functionality or behaviour of the application.

To do WBT, programming knowledge is required.

To do BBT, programming knowledge is not required.

Developer will give the input to the source code & check the output according to Requirement specification.

Tester will give the input to the application or software & check the output according to the Requirement specification.


Thanks for reading this  article.