Easy steps to create Requirement Traceability Matrix (RTM)

A Traceability Matrix is a document that co-relates any two-baseline documents that require a many-to-many relationship to check the completeness of the relationship.
It is used to track the requirements and to check the current project requirements are met.



Advantages of Requirement Traceability Matrix (RTM):
  1. Gives Overview of ALL the requirements
  2. Shows how requirements are linked to Test Cases
  3. Makes sure 100% coverage of requirements
  4. Easy to prepare
  5. No special tool is required

How to prepare Requirement Traceability Matrix (RTM):
  1. Get all available requirement documents. For eg. Business Requirement Document(BRD), Functional Requirement Document(FSD), Technical Requirement Document(TSD)
  2. First list down All the requirements from BRD one by one with requirement ID#
  3. Now go to FSD, and list all respective functional requirements for each Business Requirements
  4. Open Test Scenario or Test Case document and link available TC IDs to respective Functional Requirements
Let’s take an example:

Business Requirement Document (BRD) :


This document is provided by the Client with high-level business Requirements. Suppose for Flight Booking Application it shows below 2 requirements
BR_1  Reservation Module :
It should allow the user to book one or more tickets, one way or a round way for future dates
BR_2  Payment Module:
User should able to make payment for booked tickets via Credit / Debit Card or through Reward Points

Functional Specification Document (FSD) :

This document is prepared by the Technical team which further elaborate business requirements into functional requirements that can be implemented in software.
Suppose above 2 business requirements in BRD have more detailed functional requirements:
BR_1  Reservation Module :
  • FR_1 : One Way Ticket booking
    • It should allow user to book one-way ticket
  • FR_2 : Round Way Ticket
    • It should allow user to book round way ticket
  • FR_3: Multicity Ticket booking
    • It should allow user to book one way or round way ticket for multiple cities
BR_2  Payment Module:
  • FR_4: By Credit Card
    • It should allow user to make payment by Credit Cards
  • FR_5 By Debit Card
    • It should allow user to make payment by Debit Cards
  • FR_6 By Reward Points
    • It should allow user to make payment by Reward Points

And you have written some test cases or test scenarios for each functional requirement.
   
So if we prepare simple Requirements Traceability Matrix (RTM) for the above example it would like as below:
Requarements Treaceability Matrix
You can also add Execution Status and Defects columns in RTM to view the overall status of all requirements along with Test Cases.

How to download Chrome Driver for Selenium

The detailed steps on how you can download Selenium Chrome Driver.

Before we start with the download process, let us try to get some basic understanding on what chrome driver is and why do we need it.

What is chrome driver?

You know that selenium is a tool that basically interacts with browsers to test your web applications. In our previous article, we had mentioned that you can use selenium webdriver to open some url on a browser and interact with webpage elements like buttons, links, text boxes etc.
But selenium cannot do all these tasks on its own. It needs some help from the browser side as well, to perform all these tasks. So, in that sense, chrome driver is what helps selenium perform these actions on Chrome browser. In more technical terms, ChromeDriver is a standalone server which implements WebDriver’s wire protocol for Chrome.

Like chrome driver, are there more standalone servers for other browsers as well?

Yes. Just like chrome driver, there are multiple other standalone servers as well. Some popular ones are GeckoDriver for firefox, EdgeDriver for Microsoft Edge, InternerExplorerDriver for IE, SafariDriver for Safari browser and so on.
You will need to use these drivers when you want to run your automation scripts on their corresponding browsers.

Why have we selected chrome driver for this tutorial and not others?

This question can be rephrased like this – 
Why are we using chrome browser to automate our test cases? 

There are two main reasons for this:
  • Chrome has the highest market share worldwide. So, it makes sense to work on the browser which majority of the people are using. We have given below a comparison chart of different browsers.
  • Selenium works better in Chrome than other browsers, especially Firefox. When I started working on Selenium automation in 2012 Firefox was kind of the default browser to go to when people wanted to automate test scripts. But now a lot of people prefer to use chrome to write automation scripts.



Let us now check out the steps to download ChromeDriver !

Steps to download ChromeDriver

Follow the steps given below to download the latest version of chrome driver for selenium –
1. Open ChromeDriver download page – https://sites.google.com/a/chromium.org/chromedriver/downloads
2. This page contains all the versions of Selenium ChromeDriver. We are interested in the latest version of ChromeDriver, which is ChromeDriver 75.0.3770.8 (as on 04 May 2019), as shown in the below image.



3. Click on ChromeDriver 75.0.3770.8 link. You will be navigated to ChromeDriver download page which contains ChromeDriver for Mac, Windows and Linux operating systems.



4. Click on chromedriver_win32.zip to download ChromeDriver for Windows.
5. Once you download the zip file, unzip it to retrieve chromedriver.exe


#Reading #Writing #Learning #Skills #to #upgrate #recommend #to #change 
#Automation #Tesing #Automate #The #Manual #Efforts 

#Soni10.10 #hsoni2010 #harry #soni1010 #QualityEngineer 

Important Technical Questions - Software Testing

Important Technical Questions I have faced in the Interviews :

1. Actions in Selenium
2. Write positive and negative scenario for Alerts
3. Syntax for Windows handler
4. Find odd number
5. Disadvantages of Selenium
6. Diff btwn get() and navigate().to()
7. Write code to click the Check box which is in the Dynamic Table
8. Code for Screenshot
9. Maps in Java
10. Explain framework
11. What is Pom.xml
12. Tell the correct Xpath
13. Xpath methods
14. Css selector
15.How to identify dynamic images
16.Print only integers from strings
17.Remove duplicates from arraylist
18.Print frame names
19.How to read from XML or CSV file and store in hashmap
20.Get value of a cell in Dynamic table
21.Burn down chart(Agile)
22.Print these characters from a given string and change to uppercase
23. Access specifiers
24. Difference between Priority and Severity
25. Example for High Priority and Low Severity and vice versa
26. Difference between Test Strategy and Test Scenario
27. What Software Metrics you used
28. How to handle Dynamic Elements,since the webpage is designed in Angular Js
29. Implicit and Explicit Waits
30. Cross Browser Testing
31. Method Overloading and Method Overriding
32. Static Method
33. Dependencies in Pom.xml
34. Write code for fetching data from Excel
35. Select Statement
36. Assert and Verify
37. Check a string is Palindrome or not
38. Remove duplicate characters from a string and print
39. Which Code Repository you are using(Ex: GitHub)
40. How will you estimate the time to automate a scenario
41. How to perform Right Click
42.In a dynamic Table if I give 1 cell value,it should give me the values of other cells in that row
43.Have you Developed any Tool,If yes explain
44. Frames
45. Read from a text file and store in HashMap
46. Print the occurrence of a character if it is present more than once in a string
47. Write code for nested drop-down,You have to check all the values in the dropdown,All permutation and combination
48. Advantages of Selenium
49. Try Catch
50. How to check if a checkbox is displayed
51. What all exceptions you have faced
52. What all difficulties you have faced in Selenium
53. What all TestNG Annotations used in project
54. Where will you maintain the code
55. What all Collections,you have used in your project
56. How to run multiple test cases
57. Primitive and Non primitive Data Types
58. What is JDK,JRE and JVM
59. Settings.xml in Maven
60. Eliminate first and last string from array and print
61. Encapsulation
62. What is the use of build() and perform () in Actions



#Reading #Writing #Learning #Skills #to #upgrate #recommend #to #change 
#Automation #Tesing #Automate #The #Manual #Efforts 
#Soni10.10 #hsoni2010 #harry #soni1010 #QualityEngineer 

World’s most desirable Test Automation skills!

                                
                                 Most Desirable Test Automation skills!

In order to answer the question – “What are the most desirable test automation skills in the upcoming year of 2016?”, our research team took over the top job searching websites around the globe looking for the most popular and required technologies in the test automation field.
Most popular test automation frameworksMost popular test automation frameworks
Selenium is considered to be the world’s most popular framework. The most surprising fact regarding Selenium in the United States is that it’s almost 300% more demanded than QTP/UTF which has made to the second place. This huge gap practically renders all the other technologies as less relevant for people looking to learn a new automation framework.
The broad use of Cucumber and the fact that Behavior-Driven Development (BDD) and testing has become one of the promising technologies in Europe influence the rising popularity of the Ruby programming language. As can be seen in the graph above, Ruby for test automation has become the second most popular language in Europe, and the third most popular in the US.
We can summarize by saying that in case you are looking for test automation position in Europe, Cucumber Ruby may be the right buzzwords in your resume.
If your destination is India; Selenium or a premium solution such as QTP or Microsoft testing tools (Coded UI/Unit Testing) will most likely improve your chances in finding a job in the test automation field.
World’s test automation programming languages distribution
Most popular test automation programing languages in the world
In case you are debating on whether to acquire Java programming skills to improve your chances for sitting behind an interview desk, you probably on the right path. The combination of Java and Selenium are so far considered the most popular for test automation in the world.
The broad use of Python in test automation is already well known, yet our research reveals that Python is highly popular when used for internally developed tools.  This and the fact that it’s broadly used with Selenium contributes to its continuous and rapid growth in the US and Europe in specific.
Finally, if it hasn’t been clear so far, SQL is a very useful asset for all QA engineers.  SQL validation queries are very common and complementary to automated test scenarios, as it's broadly used with any of the existing programming languages.
Demand for mobile test automation experts Mobile test automation demand worldwide
The demand for mobile test automation experts is higher in the US compared to India, which is considered as very much lean in mobile skills demand for test automation compared to the rest of the world.
While discussing mobile technologies, acquiring test automation skills for iOS considered a must-have skill, while Android isn’t too far behind.  Therefore, we recommend targeting both technologies in order to increase your chances in finding a job in the mobile test automation field. You may refer to popular tools drill down here: Open Source Tools for Mobile App Test Automation’.
Operation Systems DistributionTest Automation for operation systems
Currently, the need for Linux automation experts is similar to Windows and continues to grow in the world of test automation across the globe, as also reflected in the growth of use in cross-platform programming languages such as (Java, Python, Ruby, etc). In any case, acquiring “advanced user” skills with Linux based distributions is necessary.
In addition, it is interesting to see the almost equal segmentation between desktop and mobile OSes (Linux<->Windows/ iOS<->Android). This trend may very much show that smartphone – mobile world is taking over the world.


#Reading #Writing #Learning #Skills #to #upgrate #recommend #to #change 
#Automation #Tesing #Automate #The #Manual #Efforts 
#Soni10.10 #hsoni2010 #harry #soni1010 #QualityEngineer 

Collection of technical ebooks

I have collection on ebooks. If need mail me on hsoni2010@gmail.com

Will share via mail.
Thank you 😊

Latest Trends in Software Testing !


In the recent past, there has been a great evolution in the field of software testing with new trends coming into IT industry services. The introduction of new technologies has brought the latest updates in the software design, development, testing and delivery. The top priority of the businesses across the globe is the cost optimization. For doing so, most of the IT leaders believe in the integration of the latest IT techniques for their organisation. Digital transformation is another important point of focus for the industries and the businesses are ranking high on the cloud computing and business analytics.

1. Scriptless Test Automation:

In recent years, there were several changes in the world of technology. The same has happened in the software testing world where Test Automation has evolved to facilitate rapid software releases at the highest quality. Automation has always been interesting, as it reduces the mundane testing efforts and accelerates the testing process. However, the ROI is not always well anticipated.

In order to maximize the scalability of test automation ‘Scriptless Test Automation’ is introduced. Scriptless test automation enables the testers and business users to automate test cases without worrying about the coding. It helps to achieve faster results and reduces the time expended to understand the code.

2. Artificial Intelligence:

Software testing is the only premeditated way where an application can be observed under certain conditions and where testers can recognize the risks involved in the software implementation. Testing, on the other hand, is gradually transitioning to greater automation to ensure maximum precision and accuracy in the journey towards digital transformation. In an attempt to make the application foolproof, the world is turning towards Artificial Intelligence (AI). This implies that instead of manual testing and human intervention, we are moving towards a situation where machines will be slowly taking over.


3. Robotic Process Automation (RPA):

New and emerging technologies, such as Artificial intelligence (AI), cognitive computing, the Internet of Things (IoT), and machine learning are revolutionizing all industries. Some implementations like self-driving cars are set to change the digital world. Advances in software and AI world have paved the way for Robotic Process Automation (RPA). It is the most recent technology which has the capability to re-invent the business process management landscape.

Wish you Good luck and all the very best for your future endeavors!!


#soni1010
#learn #something #new #everyday

6 Reasons For Automation Testing Failure

6 Reasons For Automation Testing Failure:-

Around 90% of the test automation community doesn’t know test coding, rather just a small percentage of the people know their tool, program and they understand coding as well.

Most of them go for the easy way!

Most hacks occur because individuals can’t afford real options, lack access to appropriate products which exist in a market that just doesn’t recognize their requirements. This similar strategy which is infused in our nature is applied by the test automation engineers.

There are primarily 4 types of automation tester who adapt to simple hacks for performing automation testing:

1. The Now Syndrome Tester: Whose aim is to fix the code now and rest will be tackled later on and that never again arises.

2. The Lazy Tester: These sorts testers have no time to write the codes or to learn new from the projects.

3. The Never-Failing Tester: Whatever arises these testers will make the test pass.

4. The Cod Puzzler: The testers who don’t know what they are writing in the codes.

So, what is the wrong way of coding? When you have utter disregard for anything you do that work monotonously.

You try to find the easiest solution to deliver the result as soon as possible, no matter how you are doing it.

Such kind of attitude is clumsily adopted by someone who is not proficient in the field. This is what people are doing in test automation projects, who know nothing about coding or don’t even want to the learn proper way.

There is a good chance that a failed automated tester will be having the following symptoms:

Automation testers do shortcut kind of work i.e. copy &paste.

Automation testers are horribly lazy to append more features.

Automation testers are not sure to make adjustments in the system.

Automation testers are scared to refactor the framework.

Rather than modeling tests every time, writing four lines of code and using test assertion from the test engine, and trying to catch bugs every time, testers believe to do 10 lines of coding.

They give weight to quantity instead of quality. And the good news is many of these code snippets technique is used all around the world, not just in India.

But it’s not something to take pride in because it basically is not the accurate method of testing.

Let’s have a look different types of coding shortcuts/hacks strategies applied by automation testers which categorize them as failed testers.

1. For Loop Method

Almost 38000of lines go through thought work, test runners don’t use test engine, especially in C#.

They start with the for loop for first 10 tests, then read the copied codes from excel and make this a regular procedure that sums up to 25000 tests.

This is the method of for loop with hardcore process calls. And these are really easy to accomplish automation test hacks which might seem unbelievable.

However, it’s a bitter reality of how unlearned testers are performing automation testing these days.

2. Duplicating of Tests

Another instance of such improper automation testing approach is taking one copy of tests as the point the variable changes in another scenario, even operating system changes but copied the content of code is taken in all the environments.

It’s never revealed by testers that the copy of the same test from a previous one is performed instead they tell that is was the same kind of test.

And this is done continuously on different scenarios. Moreover, after a certain time, the test code does not remain the same but it becomes similar since difference always occurs in automation testing–it’s impossible to refactor the code.

Since right testing is an outcome of hard work, not the hack of using “control + C” and “control + V” technique from the excel sheet –this is an extremely bad habit in coding and testing.

3. Spreadsheet IDE for Keyword-Driven Testing

There are many cases of test automation engineers who have complete codes saved in their excel sheets which they use in their keyword drove testing process.

Hence, in this way keyword driven testing has outlasted its purpose. Why? There are tests that need coding than some other tests require well representation by employing the keyword driven strategy.

But this addiction to copying code from spreadsheet practice has eventually ruined the whole process.

The automation testers are simply reading and copying from their spreadsheets, do string formatting, generate the C# file, organize it at the runtime and run the code!

Such failed testers don’t know how to model, even don’t want to study C# or.Net reflections just take the easy road to test, i.e. copying the codes. And this pathetic hack is run in almost all the keyword driven testing.

4. Researching Approach

Individuals nowadays state they are researching to learn better coding skills, but here too such testers use Google search engine to find the shortcut solutions.

How?

The testers open the links from the first few results of the Google page than they directly apply the same strategy –copying&pasting the codes from these links.

They do not model it; even they don’t notice that these codes already exist in their previous spreadsheets, because such automation testers are not trying to understand the real and accurate intent of testing. Surprisingly, they proudly declare that they write so many codes in a day.

5. Delete Assertion Rule

Further, these types of unprofessional automated testers work on the goal of deleting the assertion.

It’s our duty that in case that the automation testing begins to fail, we need to work on them rather than thinking that company will consider us a bad tester if we show them the failed testing results.

So, to save them from a shame the automated tester deletes the assertion which is a total misunderstanding of performing the test automation properly.

There is nothing wrong if a test fails basically, the goal is not passing the test. But the rule in an unskilled tester’s diary is – comment – run the code – create the report – uncomment it, eventually to pass the test anyhow.

6. Repeat Testing Technique

Then there’s a repeater automation tester. What is this type of tester’s goal?

The person doesn’t want to learn multi-threading so he/she instead of solving any issue will read it only once per test considering there are merely 10 or 12 tests that need to be run, so it’s fine using such technique! Most of the testers are working on this strategy.

So, the same file is read hundreds or thousands of times rather than learning something new.

Consequences of using Coding Hacks in Test Automation.

Collections of the plagiarized part

Neither an original innovation nor a relevant solution

Inefficient, insecure, improperly designed, and also illegal

These solutions can never satisfy the customer

Violation of IP rights

Can fail shortly as should be

Wrapping up…

To be honest, never can an automation testing be performed and achieved in this way. Hence, the test automation is not at all meant for the failed developers, knowing nothing about testing and coding.

Testing is not for everyone, not just for anybody who doesn’t know to code appropriately. In fact; automation testing is also not for the one who knows a few codes.

This great process needs right aptitudes, understanding of coding languages and eagerness to further learn something to sharpen the testing skills.

#soni10.10