<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Kuldeep Rana</title>
    <description>The latest articles on DEV Community by Kuldeep Rana (@ranakuldeep1989).</description>
    <link>https://dev.to/ranakuldeep1989</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F275068%2F1d02b829-507d-4aa5-958f-0df986373927.jpg</url>
      <title>DEV Community: Kuldeep Rana</title>
      <link>https://dev.to/ranakuldeep1989</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ranakuldeep1989"/>
    <language>en</language>
    <item>
      <title>How to prepare for Software Testing Interview?</title>
      <dc:creator>Kuldeep Rana</dc:creator>
      <pubDate>Sat, 19 Feb 2022 06:09:49 +0000</pubDate>
      <link>https://dev.to/ranakuldeep1989/how-to-prepare-for-software-testing-interview-35l5</link>
      <guid>https://dev.to/ranakuldeep1989/how-to-prepare-for-software-testing-interview-35l5</guid>
      <description>&lt;p&gt;Preparation is the key to success. There is a saying “By failing to prepare, you are preparing to fail.” Your success in any interview depends on your preparation. Before, discussing how to prepare for a software interview. We are going to have a look at common steps that are involved in any interview preparation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Interview Research&lt;/strong&gt;- As the day of your interview comes closer you must take some time and do proper research on the following topics.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Job Description&lt;/strong&gt;- Read the job description thoroughly and try to understand the responsibilities. Review the words clearly and try to align your skillset with the job description provided. Reading carefully and thoroughly the Job Description can also help us in analyzing the questions that we may face in an interview.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Research the Organization&lt;/strong&gt;- Try to get in-depth knowledge about the organization by visiting their websites, social pages, reviews of employees, and other online sources. Get to know about ‘What are the current Projects?’,’ What type of products they offer?’.&lt;br&gt;
Find out the mission, values, and work culture. As sometimes the interviewer wants to know more about your presence than your theoretical knowledge. You might come across common questions like- “What do you know about our company?”.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Interview Panel&lt;/strong&gt;- Try to find who will be taking your interview, you can get some insights by viewing the mail that mail you get. Check the Linkedin profile and other online sources for better knowledge.&lt;/p&gt;

&lt;p&gt;Prepare a list of common questions:- Make a list of common interview questions that are asked most and try to frame your own answer rather than copying. Some of the most asked questions are:-&lt;br&gt;
Tell me about yourself?&lt;br&gt;
Where do you see yourself in 5 years?&lt;br&gt;
Why do you need this job?&lt;/p&gt;

&lt;p&gt;Now, proceeding towards our topic i.e. Preparing for a Software Testing Interview. You must improve your technical subjects and have some basic understanding of SDLC (Software Development Life Cycle) and knowledge about Testing.&lt;/p&gt;

&lt;p&gt;Software Testing is an important step in any software development project. It is the process to verify that the software developed is bug-free and matches the technical requirements as guided by the design and development team.&lt;br&gt;
The aim of software testing is not only to check the product whether it's bug-free or not but also a way to improvise it. Testing is an indicator of quality and a way to provide feedback to the developers.&lt;/p&gt;

&lt;p&gt;In this article, we have picked some important &lt;a href="https://artoftesting.com/manual-testing-interview-questions"&gt;manual testing interview questions by ArtOfTesting&lt;/a&gt;, I hope these will help you to get some insights into the basic and important questions asked during an interview.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ques.1 What's the role of testing in SDLC(Software Development Life Cycle)?&lt;/strong&gt;&lt;br&gt;
Ans-  The role of software testing in SDLC is quite important. &lt;br&gt;
It provides interaction between the product development and end-user.&lt;br&gt;
It helps in recognizing bugs and errors before the development stage.&lt;br&gt;
It's a way to assure that the program works as intended.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ques.2 What is Exhaustive Testing?&lt;/strong&gt;&lt;br&gt;
Ans- Exhaustive Testing is a technique used in software development that tests all the possible combinations of the data set that are used for testing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ques.3 What is Validation and Verification in Software Testing?&lt;/strong&gt;&lt;br&gt;
Ans- &lt;br&gt;
Verification- Verification is a static process that ensures the conditions of a product satisfy the conditions imposed during the start of the phase. It is done without executing the codes. &lt;br&gt;
Methods of Verification - Walkthrough, Inspection, and Reviews.&lt;/p&gt;

&lt;p&gt;Validation- Validation is a dynamic process that evaluates the software during or at the end of the development process. It is performed with the help of code execution&lt;br&gt;
Methods of Verification - Testing and End- Users.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ques.4  What are the Different Methods of testing?&lt;/strong&gt;&lt;br&gt;
Ans-  There are three methods for testing software these are&lt;br&gt;
Black-box testing&lt;br&gt;
Grey-box testing&lt;br&gt;
White-box testing&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ques.5  What is STLC(Software Testing Life Cycle)?&lt;/strong&gt;&lt;br&gt;
Ans-  STLC is a sequence of specific actions used during software testing to ensure the quality standards are met. It is an integral part of SDLC(Software Development Life Cycle).&lt;br&gt;
In STLC various activities are executed in a predefined manner known as STLC phases.&lt;br&gt;
Requirement Analysis- Identify the type of tests to be performed, testing environments, and various other parameters.&lt;br&gt;
Test Planning- It involves test tool selection, resource planning.&lt;br&gt;
Test Case Development- Create test cases, automate scripts, and create test data.&lt;br&gt;&lt;br&gt;
Test Environment Setup- Perform Smoke Test on the build, understand required architecture, prepare environment setup.&lt;br&gt;
Test Execution- Execute Tests, Track the defects.&lt;br&gt;
Test Cycle Closure- Prepare test closure report, Result analysis, Evaluate complete cycle.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ques.6  What are the key components of a bug report?&lt;/strong&gt;&lt;br&gt;
Ans- Bug report is also known as a defect report. The main aim of writing a bug report is that it gets fixed with the next update. The key component that a bug report must cover is that&lt;br&gt;
Detailed Information&lt;br&gt;
Identify the key component&lt;br&gt;
Prioritize the bugs according to their urgency&lt;br&gt;
Result analysis&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ques.7 What is the difference between QA and QC?&lt;/strong&gt;&lt;br&gt;
Ans-  QA stands for Quality Assurance, QA ensures that the software is thoroughly tested before releasing it for end-users. These activities generally take place during the development phase of the product.&lt;br&gt;
QC stands for the Quality check, QC checks whether the developed products are meeting functional and non-functional requirements or not. These activities take place after the development phase.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ques.8  What is Bug leakage and Bug Release?&lt;/strong&gt;&lt;br&gt;
Ans-  Bug Leakage- When a bug is missed by the testing during the testing phase of the product and the build is released for production. Now, if the bug is found by the end-user it is known as Bug Leakage.&lt;/p&gt;

&lt;p&gt;Bug Release-  When the product is handed over to the testing team with some known bugs is known as Bug Release.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ques.9 How is error different from failure?&lt;/strong&gt;&lt;br&gt;
Ans- Error- When a program fails to combine or run due to coding error/mistakes it's known as an error.&lt;br&gt;
Failure- When the bugs left out during the development phase reach out to the end-user and the software fails it is termed as failure.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ques.10 What are the tests that can be automated?&lt;/strong&gt;&lt;br&gt;
Ans- The tests that can be automated are:&lt;br&gt;
Smoke Test Cases&lt;br&gt;
Regression Test Cases&lt;br&gt;
Data-Driven Test Cases&lt;br&gt;
Non-Functional Test Cases&lt;br&gt;
Complex calculation Test Cases&lt;/p&gt;

&lt;p&gt;So, this is the end of the article. We have covered some of the important questions that are asked during the software testing interview and the ways in which you can excel yourself before any interview. Thanks for reading.:-)&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How can test automation help businesses?</title>
      <dc:creator>Kuldeep Rana</dc:creator>
      <pubDate>Sat, 09 Jan 2021 13:16:46 +0000</pubDate>
      <link>https://dev.to/ranakuldeep1989/how-can-test-automation-help-businesses-51n6</link>
      <guid>https://dev.to/ranakuldeep1989/how-can-test-automation-help-businesses-51n6</guid>
      <description>&lt;p&gt;In a recent survey, it was found out that businesses that switched to automation testing had an increase in profit by 45 percent. This is because the testing coverage was increased by 71 percent and about 68 percent of bugs were caught in the early production stage.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What does this mean in the business world?&lt;/strong&gt;&lt;br&gt;
More time for marketing and faster delivery of the product.&lt;br&gt;
It is a proven fact that regressive testing has helped businesses grow faster than those who did not include testing in their production. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;But how is such exhaustive testing possible?&lt;/strong&gt;&lt;br&gt;
In this ever-increasing technology, there is no time for errors and delays in production. Therefore, computers have replaced humans to increase efficiency and reduce human error. The same is the case with automation testing.&lt;/p&gt;

&lt;p&gt;The inclusion of Automation testing has helped businesses in regressive testing and thus providing quality goods to the customers. The computers increase the speed of testing cycles and exempt the testers from executing repetitive tasks.&lt;/p&gt;

&lt;p&gt;In this article, we will talk about what Automation testing is and how is it helping to grow businesses?&lt;/p&gt;

&lt;h2&gt;
  
  
  AUTOMATION TESTING
&lt;/h2&gt;

&lt;p&gt;Automated testing or automation testing is a process or a technique that helps in verifying the software using special automated tools specifically designed to execute designed test cases.&lt;/p&gt;

&lt;p&gt;Carefully designed test scripts are written using any automation testing software and test cycles are executed and the expected results are compared with the actual results.&lt;br&gt;
Some of the examples of such tools are-&lt;br&gt;
*Selenium - &lt;a href="https://artoftesting.com/selenium-tutorial"&gt;Automated testing using Selenium&lt;/a&gt; supports web applications.&lt;br&gt;
*Katalon Studio - It is used for testing API, Web, and mobile application testing.&lt;br&gt;
*UFT One - It is a popular tool used to test Web, desktop, mobile, and RPA application.&lt;br&gt;
*Ranorex - It is used for Web, mobile, desktop, and API testing.&lt;br&gt;
there are numerous more such testing tools available in the market that have made the testing process much easier.&lt;/p&gt;

&lt;h2&gt;
  
  
  BENEFITS OF AUTOMATION TESTING
&lt;/h2&gt;

&lt;p&gt;Now that we know what automation testing means let’s look at the top 8 benefits that it has been providing to the businesses and helping them grow faster.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Regression testing&lt;br&gt;
With the use of automation tools, regression testing has become easier. Due to this regressive testing, the quality of products is increased as almost exhaustive testing is conducted.&lt;br&gt;
Performing regressive testing manually is very time consuming, deploying several test cycles takes a lot of time. Thus businesses have been benefitted since the time they have switched to automated testing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Multi platforms working&lt;br&gt;
While testing web browsers, numerous test cases need to be performed simultaneously over various browsers. Cross-browser compatibility over various browsers, networks, mobile devices, and operating systems is important while developing a website.&lt;br&gt;
Working on multiple browsers simultaneously is only possible using automated tools, which reduce the complexity and save time.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Maximize test coverage &lt;br&gt;
In manual testing, there are always limitations to the number of test cases that can be verified. This problem is solved using automation testing software.&lt;br&gt;
It is important that all aspects of the product are checked. Therefore more the test cases the better it is. This process of widening the test coverage helps the company deliver quality products.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Reusability&lt;br&gt;
Creating test cases is not an easy task. It takes time and a lot of thought process to create test cases that will create a faultless assured product. &lt;br&gt;
Therefore, it becomes very cumbersome for the testers and developers to create test cases manually each time.&lt;br&gt;
This is where automation testing comes in handy. There is the only requirement of one robust testing script and use it as many times as you like.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cost-effective &lt;br&gt;
At the very start of the article, I had mentioned that automation testing helps in catching bugs in the early production stage of the software.&lt;br&gt;
This eventually leads to fewer faults in the final product. &lt;br&gt;
Thus less damage to the business. This helps in cost-effective production as fewer faulty products are found.&lt;br&gt;
Also, a lot of resources are wasted if bugs are found in the final product. If the bugs are found in the earlier stages a lot of money is saved in solving the issues detected.&lt;br&gt;
Thus automation testing proves to be cost-effective for the business.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Faster Delivery of the product&lt;br&gt;
As you all know the whole SDLC(software development life cycle) consumes a lot of time during the construction of the product. Using automated tools by the testers and developers quickens up the whole process.&lt;br&gt;
The SDLC involves detecting bugs and fixing them. If the whole process takes less time than estimated it not only saves time for everyone involved, the product reaches the market before schedule. &lt;br&gt;
Thus the delivery of the product is faster, and what is greater than consumer satisfaction!&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Increased efficiency&lt;br&gt;
If the bugs are detected and fixed earlier, there is a tight feedback loop of all the changes involved, and the product reaches the market early the whole product proves to be a success.&lt;br&gt;
This all is possible if the organization adopts automation testing.  With fewer human errors due to the use of computers the whole process of developing the software becomes much more efficient as compared to manual testing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;ROI&lt;br&gt;
Delivering the product on or before time in the market saves time for the testers, marketers, production department, and each person involved. Also, less manpower and resources are involved in the whole process. This helps in creating a huge ROI(return of investment ) for the company.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;CONCLUSION&lt;br&gt;
In a nutshell, it can be said that automation testing has taken a front seat in the process of increasing profits for businesses. Many small businesses neglect the importance of testing.&lt;/p&gt;

&lt;p&gt;However, be it a small scale business or a large scale, quality assurance of the software will only come with regressive testing. This quality and fault-free product will always lead to consumer satisfaction, which is the ultimate goal of every business.&lt;/p&gt;

</description>
      <category>testing</category>
      <category>automationtesting</category>
    </item>
    <item>
      <title>Top 10 SQL Queries to Prepare for Interviews</title>
      <dc:creator>Kuldeep Rana</dc:creator>
      <pubDate>Tue, 06 Oct 2020 20:23:58 +0000</pubDate>
      <link>https://dev.to/ranakuldeep1989/top-10-sql-queries-to-prepare-for-interviews-l3j</link>
      <guid>https://dev.to/ranakuldeep1989/top-10-sql-queries-to-prepare-for-interviews-l3j</guid>
      <description>&lt;p&gt;Be it developers, testers, data scientists, or even someone from a business analyst profile, knowledge of SQL is required in all the fields. &lt;/p&gt;

&lt;p&gt;During interviews for these profiles instead of directly asking questions based on theoretical concepts, the interviewers ask SQL queries that test both the theoretical as well as practical understanding and usage of the different SQL concepts. &lt;/p&gt;

&lt;p&gt;In this article, we will be discussing some of the most &lt;a href="https://artoftesting.com/sql-queries-for-interview"&gt;commonly asked SQL queries&lt;/a&gt; for the interviews that you should prepare. So, let’s begin.&lt;/p&gt;

&lt;p&gt;Ques.1. Write an SQL query to return the count of occurrence of a character in a particular field.&lt;br&gt;
Ans. For this query, we can simply use the Length() function with the subtraction operator and a Replace function. &lt;br&gt;
SELECT Name, LENGTH(Name) - LENGTH(REPLACE(Name, 'k', '')) FROM Employee;&lt;/p&gt;

&lt;p&gt;Ques.2. Write an SQL query to display all the records that are present in one table - TableA but not present in another table - TableB.&lt;br&gt;
Ans. In order to display the records from one table not present in another table, we can use the MINUS operator.&lt;br&gt;
SELECT * FROM TableA MINUS SELECT * FROM TableB;&lt;/p&gt;

&lt;p&gt;Ques.3. Write an SQL query to update a field’s values by removing any leading and trailing spaces.&lt;br&gt;
Ans. In this query, we will be using the UPDATE command with LTRIM() and RTRIM() functions. &lt;br&gt;
UPDATE Table1 SET Name = LTRIM(RTRIM(Name));&lt;/p&gt;

&lt;p&gt;Ques.4. Write an SQL query to fetch those employees who are not assigned any project.&lt;br&gt;
Ans. With this query, the interviewer wants to see if you know the usage of the IS NULL function.&lt;br&gt;
SELECT EmpName FROM Employee WHERE Project IS NULL;&lt;/p&gt;

&lt;p&gt;Ques.5. Write an SQL query to return all the records lying in a particular year e.g. 2021.&lt;br&gt;
Ans. Here, we can use the BETWEEN operator in SQL.&lt;br&gt;
SELECT * FROM TableA WHERE DateJoin BETWEEN '2021/01/01' AND '2021/12/31';&lt;/p&gt;

&lt;p&gt;Ques.6. Write an SQL query for joining 3 tables.&lt;br&gt;
Ans. For joining three tables, we just need to use the JOIN clause twice like below.&lt;br&gt;
SELECT col1, col2 FROM TableA JOIN TableB ON TableA.Col3 = TableB.Col3 JOIN TableC ON TableA.Col4 = TableC.Col4;&lt;/p&gt;

&lt;p&gt;Ques.7. Write a query to display only the odd records from a Table.&lt;br&gt;
Ans. For returning odd records, we can use the MOD function with the ‘not equal to operator’ - &amp;lt;&amp;gt;.&lt;br&gt;
SELECT * FROM Employee WHERE MOD (EmpId, 2) &amp;lt;&amp;gt; 0;&lt;/p&gt;

&lt;p&gt;Ques.8. How can we create a new table with data and structure the same as an existing table?&lt;br&gt;
Ans. Creating a new table from an existing table just requires us to use the CREATE TABLE command that inherently supports this when used along with the SELECT command.&lt;br&gt;
CREATE TABLE TableNew SELECT * FROM TableOld;&lt;/p&gt;

&lt;p&gt;Ques.9. How can we create a blank table with the structure the same as an existing table?&lt;br&gt;
Ans. With the above SQL query asked in the previous question, we have seen the creation of a new table from an existing table. Using the same query, we just need to use a false condition like ‘where 1=0’. This condition will prevent any rows from getting copied. Hence, only the structure will be copied.&lt;br&gt;
CREATE TABLE TableNew SELECT * FROM TableOld where 1=0;&lt;/p&gt;

&lt;p&gt;Ques.10. Write an SQL query to return the nth highest record (e.g. salary, marks, rank, etc) from a table.&lt;br&gt;
Ans. In SQL Server, we can use the Top command.&lt;br&gt;
SELECT TOP 1 Salary FROM (SELECT DISTINCT TOP N Salary FROM TableA ORDER BY Salary DESC) ORDER BY Salary ASC;&lt;/p&gt;

&lt;p&gt;In MySQL, we can use the limit clause-&lt;br&gt;
SELECT Salary FROM TableA ORDER BY Salary DESC LIMIT N-1,1;&lt;/p&gt;

&lt;p&gt;For example, if we are required to find the 3rd highest record, the query would be-&lt;br&gt;
SELECT Salary FROM TableA ORDER BY Salary DESC LIMIT 2, 1;&lt;/p&gt;

&lt;p&gt;This completes our list of SQL queries that you should prepare in your interviews. I hope you liked these questions. Thanks for reading.&lt;/p&gt;

</description>
      <category>sql</category>
      <category>sqlinterviews</category>
    </item>
    <item>
      <title>TestNG Interview Questions for Experienced Professionals</title>
      <dc:creator>Kuldeep Rana</dc:creator>
      <pubDate>Fri, 25 Sep 2020 10:29:32 +0000</pubDate>
      <link>https://dev.to/ranakuldeep1989/testng-interview-questions-for-experienced-professionals-5dj0</link>
      <guid>https://dev.to/ranakuldeep1989/testng-interview-questions-for-experienced-professionals-5dj0</guid>
      <description>&lt;p&gt;Hello friends! &lt;a href="https://testng.org/doc/"&gt;TestNG&lt;/a&gt; is one of the most common testing frameworks used in the automated testing suites. In this article, I am sharing 5 of the &lt;a href="https://artoftesting.com/testng-interview-questions-with-answers"&gt;top testNG interview questions&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Ques. How can we skip a testNG test case conditionally?&lt;/b&gt;&lt;br&gt;
Ans. TestNG provides an exception by the name - SkipException. We can throw this exception inside our conditional statement like this-&lt;br&gt;
&lt;code&gt;@Test&lt;br&gt;
public void testMethod(){&lt;br&gt;
  if(conditionToCheckForSkippingTest)&lt;br&gt;
 throw new SkipException("Skipping the test");&lt;br&gt;
  //test logic&lt;br&gt;
}&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Ques. How can we pass parameter to our test script?&lt;/b&gt;&lt;br&gt;
Ans. This can be achieved with the help of @Parameter annotation and ‘parameter’ tag in the testng.xml.&lt;/p&gt;

&lt;p&gt;&amp;lt;parameter name="sampleParamName" value="sampleParamValue"/&amp;gt;&lt;/p&gt;

&lt;p&gt;Sample test script-&lt;br&gt;
&lt;code&gt;public class Test {&lt;br&gt;
   @Test&lt;br&gt;
   @Parameters("sampleParam")&lt;br&gt;
   public void parameterTest(String paramValue) {&lt;br&gt;
      System.out.println("Value of sampleParam is - " + sampleParam);&lt;br&gt;
   }&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Ques. How can we run our test cases in parallel?&lt;/b&gt;&lt;br&gt;
Ans. In order to run the tests in parallel just add these two key-value pairs-&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&lt;br&gt;
parallel="{methods/tests/classes}"&lt;br&gt;
thread-count="{number of thread}".&lt;br&gt;
&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Ques. What is the use of @Listener annotation?&lt;/b&gt;&lt;br&gt;
Ans. TestNG provides us different kinds of listeners using which we can perform some action in case an event gets triggered. We can use these listeners for various purposes like - taking screenshots in case of failure, logging, etc.&lt;br&gt;
&lt;code&gt;&lt;br&gt;
@Listeners(PackageName.CustomizedListenerClassName.class)&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;public class TestClass { &lt;br&gt;
    WebDriver driver= new FirefoxDriver();&lt;a class="comment-mentioned-user" href="https://dev.to/test"&gt;@test&lt;/a&gt;
&lt;br&gt;
    public void testMethod(){&lt;br&gt;
    //test logic&lt;br&gt;
    }&lt;br&gt;
} &lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Ques. What is the use of @Factory annotation?&lt;/b&gt;&lt;br&gt;
Ans. The @Factory annotation helps in the dynamic execution of the testNG tests. Using @Factory annotation, we can pass parameters to the whole test class at run time.&lt;br&gt;
&lt;code&gt;public class TestClass{&lt;br&gt;
    private String str;&lt;br&gt;
    public TestClass(String str) {&lt;br&gt;
        this.str = str;&lt;br&gt;
    }&lt;/code&gt;&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@Test
public void TestMethod() {
    System.out.println(str);
}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;}&lt;/p&gt;

&lt;p&gt;public class TestFactory{&lt;br&gt;
    //The test methods in class TestClass will run twice with data "k1" and "k2"&lt;br&gt;
    @Factory&lt;br&gt;
    public Object[] factoryMethod() {&lt;br&gt;
        return new Object[] { new TestClass("K1"), new TestClass("k2") };&lt;br&gt;
    }&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;To learn more about the different capabilities of a TestNG, refer to this comprehensive &lt;a href="https://artoftesting.com/testng-tutorial"&gt;TestNG Tutorial&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>testing</category>
      <category>interview</category>
      <category>testinginterview</category>
      <category>testng</category>
    </item>
    <item>
      <title>Top 5 Software Testing Myths Debunked</title>
      <dc:creator>Kuldeep Rana</dc:creator>
      <pubDate>Mon, 22 Jun 2020 13:31:36 +0000</pubDate>
      <link>https://dev.to/ranakuldeep1989/top-5-software-testing-myths-debunked-m68</link>
      <guid>https://dev.to/ranakuldeep1989/top-5-software-testing-myths-debunked-m68</guid>
      <description>&lt;p&gt;Software testing like any other constantly evolving field is surrounded by false notions or myths. Some of these myths are for so long in the testing industry that it is hard to separate these myths from facts. In this article, we will address the top 5 software testing myths, unveil the reality behind it, and debunk them. So, let’s begin.&lt;/p&gt;

&lt;h2&gt;Testers are inferior to developers&lt;/h2&gt;

&lt;p&gt;It is true that developers are the creators of the software application but it is the testers that make sure that the application works as intended. In fact, the very need for testing emerged when the businesses faced a lot of problems including loss of revenue, loss of customers, customer dissatisfaction, etc when software applications were not tested properly.&lt;br&gt;
So, it is not about being inferior or superior, both the fields are separate with different goals and career paths.&lt;/p&gt;

&lt;h2&gt;Developers are better at automation testing than manual testers&lt;/h2&gt;

&lt;p&gt;It is one the most debatable topics: who is better at automation testing, a developer who can automate the test cases, or a manual tester who can learn a programming language and some automation tool to create test scripts.&lt;/p&gt;

&lt;p&gt;The fact is, even in the case of test automation, the person needs to have a testing mentality. A developer can write an efficient program but without the testing mindset, there can be missing tests or false-positive test cases. &lt;/p&gt;

&lt;p&gt;Whereas, a manual tester with a decent understanding of a programming language can &lt;a href="https://artoftesting.com/selenium-tutorial"&gt;learn automation tools like Selenium&lt;/a&gt; and prepare from various online or offline resources to simply automate the manual testing process and create an effective test automation suite.&lt;/p&gt;

&lt;h2&gt;Automation can eliminate the need for manual testing&lt;/h2&gt;

&lt;p&gt;Just like the other fields, software testing is also affected by automation. There is a widespread myth that automation has or in the near future will completely eliminate the need for manual testing.&lt;br&gt;
So first of all, even the most efficient automated tool requires test script creation which is based on manual test cases prepared by manual testers. Also, even with all the advancements in automation, some of the types of testing like exploratory testing, accessibility testing, usability testing, etc can’t be automated. So, the need for manual testing will always be there, no matter at what rate the automation industry advances.&lt;/p&gt;

&lt;h2&gt;Software testing is a destructive activity&lt;/h2&gt;

&lt;p&gt;Some people consider the job of software testing as a destructive activity as they think the testing is all about finding faults and breaking the system. &lt;/p&gt;

&lt;p&gt;Instead, software testing is a constructive activity as it helps with the creation of quality software by finding faults in the system before releasing them to the end-user or the customer. &lt;/p&gt;

&lt;h2&gt;Testing should be done after the coding phase&lt;/h2&gt;

&lt;p&gt;It is true that testing was traditionally done after the coding phase only but with the requirement of complex software applications and the evolution of the Software development life cycle models, the testing phase was introduced much early in the software development process.&lt;br&gt;
Even some of the old SDLC models like - V model, Spiral model have the testing activities integrated with the development efforts. In those models and all the emerging SDLC models, testing and development activities go in parallel and in various iterations. So, the myth that testing should be done after coding or the implementation phase doesn’t hold water now.&lt;/p&gt;

&lt;p&gt;Conclusion&lt;br&gt;
Whether you are new to software testing or you have a fair bit of experience in the testing field, you must have encountered the different myths related to software testing. I hope this article will help you in understanding the reality of the software testing myths with facts and the real truth behind those notions.&lt;/p&gt;

</description>
      <category>testing</category>
    </item>
    <item>
      <title>Quality Assurance Best Practices</title>
      <dc:creator>Kuldeep Rana</dc:creator>
      <pubDate>Fri, 22 Nov 2019 07:42:43 +0000</pubDate>
      <link>https://dev.to/ranakuldeep1989/quality-assurance-best-practices-5fbg</link>
      <guid>https://dev.to/ranakuldeep1989/quality-assurance-best-practices-5fbg</guid>
      <description>&lt;p&gt;In the consumer-driven market of the present economy, ‘quality’ is the buzzword. The software industry stands as no exception. Let’s think to be a user ourselves, we take no time in hitting the ‘back’ button if a site takes longer to open, we straight away jump to the alternative. Similarly, a site with a complicated framework would not welcome many users. Such small examples quote the large importance of Quality Assurance (QA) of the software. &lt;/p&gt;

&lt;p&gt;QA testing is not at all a simple job as it involves the handling of big data, tackling complicated codes and programs, creating protections against worms and glitches, postponing obsolescence as far as possible, and the list of the tasks go on. To ensure that all of this is performed effectively and the results are visible in the form of a smooth and high UX software, we need to have an efficient set of QA Analysts and here are a few of the best practices suggested for them-&lt;/p&gt;

&lt;h2&gt;EXPAND TOWARDS BOTH SIDES&lt;/h2&gt;

&lt;p&gt;The chain says: “software developers—software testers—users”&lt;br&gt;
The task of the testers is to elongate on both sides. The testers can’t be efficient by only examining the work of the developers, they can neither be successful if they are exclusively relying on customer feedback. Both the poles matter. &lt;/p&gt;

&lt;p&gt;On the developer’s end: As they say, most of the bottlenecks of a thing are known by its creators only. So the major loopholes to be worked on can be known from the developer’s side. The testers need to monitor the coding and programming in the process of software development so that the outcome software is free from glitches and errors. We can’t ignore the developer’s side and work on the basis of user experience only.&lt;/p&gt;

&lt;p&gt;On the user’s end: Altering the errors of the developers is not enough. Sometimes the software is perfect in the parameters of its development, the coding is error-free and the interface is worm-proof but still, users may face problems in transacting through that software. There may be a lack of compatibility with the browsers or complexity in the working of the website which may hamper the user-friendliness of your software even after having the ideal developers. So the UX or feedback is very essential. &lt;/p&gt;

&lt;h2&gt;SMART WORK INSTEAD OF HARD WORK&lt;/h2&gt;

&lt;p&gt;This head does not mean to discourage you from working hard but it is simply suggesting you prioritize your work. Say, if you are an e-commerce platform, you have multiple tiny places in your software to work on. You have to manage the shopping carts, the display of products, the payment page, the order tracking mechanisms and much more. We can’t work on all of them simultaneously. We need to prioritize according to the importance of the areas to be tested in terms of QA. &lt;br&gt;
Also, pick up the critical areas first. There are certain aspects of the software which if attacked, can cause serious glitches or losses. So rank in terms of risks or proneness to the worms or failures. The small areas must be kept for the last, which means the areas, even if attacked won’t lead to much less. &lt;/p&gt;

&lt;h2&gt;CHECK TWICE, CHECK THRICE&lt;/h2&gt;

&lt;p&gt;During the water purification process, the same water passes through numerous stages to be totally germ-free, only sedimentation or chlorination won’t make it fit for drinking. Similarly, pass your software through a chain of filters to minimize the errors. The more the number of filers, the more secure is your software. So instead of choosing the one ideal technique of testing, create a right combination of techniques for greater results. &lt;/p&gt;

&lt;h2&gt;STAY UPDATED&lt;/h2&gt;

&lt;p&gt;This is the basic requirement for the QA testing team to achieve the desired results. Technology being the fastest-changing thing, testing techniques too need to be updated parallelly. Both the software and software testing methods must not be prone to obsolescence at any given point of time. &lt;/p&gt;

&lt;h2&gt;TEST BEFORE YOU LAUNCH&lt;/h2&gt;

&lt;p&gt;This step is mandatory if you are planning to introduce a brand new software in the market. First, test the framework on your own level before actually allowing the general public to access it. Step into the shoes of a user and check the common things like user-friendliness and inter-browser acceptance. &lt;/p&gt;

&lt;p&gt;Also, check for the interoperability and level of simplicity in working. Make sure the speed is smooth and the site does not take more than the usual time to launch open. Also, work towards building walls against the worms and malicious codes. This preliminary test will minimize the risks of any errors during the actual existence of your software. &lt;/p&gt;

&lt;h2&gt;DELEGATION TO AUTOMATION&lt;/h2&gt;

&lt;p&gt;Only manual testing can not ensure speedy and effective testing. Nowadays, &lt;a href="https://artoftesting.com/automation-testing"&gt;automation testing&lt;/a&gt; is a must in the process of QA Testing so the testers must delegate their work to automated ways of testing instead of working on A to Z on their own. The ideal integration of both techniques will make the overall results of testing speedy and accurate.&lt;/p&gt;

&lt;h2&gt;PERPETUAL SUCCESSION&lt;/h2&gt;

&lt;p&gt;Testing is a continuous process. Once you have got all ticks in your QA list does not mean that you are good to go forever. Continuous testing is required as and when there are changes in the coding even if those changes are minor. Just like a silverfish damages our winter clothes out of nowhere, even the minutest holes in the software may welcome the entry of the worms. &lt;/p&gt;

&lt;h2&gt;HAVE A TEAM OF EXPERTS&lt;/h2&gt;

&lt;p&gt;Software testing is not a cup of tea for a single analyst. We need to have a specialized team of experienced engineers to perform the tasks with expertise. Even if you are following automated techniques to test the quality of your software, capable human resources is a mandate for directing and monitoring work. &lt;/p&gt;

&lt;h2&gt;PERSONALISE&lt;/h2&gt;

&lt;p&gt;Being a clichè won’t work any wonder if you are into software testing. Different organizations have different software so they require different testing techniques. In fact, even copy-pasting a technique won’t work, testers have to improvise in their own way. Thus, even standard testing methods require personalized applications. &lt;/p&gt;

&lt;h3&gt;Conclusion&lt;/h3&gt;

&lt;p&gt;So there isn't anyone secret key to the ideal QA Testing, we need to keep evolving our techniques as per the needs of time and the kind of industry we are working for. The points mentioned above are not the ‘only’ ways to excel in software testing, they are just a few tried and tested suggestions by which you can supplement the work you are already pursuing. All the best to you for your testing journey! &lt;/p&gt;

</description>
      <category>qa</category>
      <category>testing</category>
      <category>qualityassurance</category>
      <category>softwaretesting</category>
    </item>
  </channel>
</rss>
