<?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: Gomahan</title>
    <description>The latest articles on DEV Community by Gomahan (@gomahan).</description>
    <link>https://dev.to/gomahan</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%2F1273114%2F45ed1108-731c-4f7e-a601-29a33f682dae.png</url>
      <title>DEV Community: Gomahan</title>
      <link>https://dev.to/gomahan</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/gomahan"/>
    <language>en</language>
    <item>
      <title>Task 1</title>
      <dc:creator>Gomahan</dc:creator>
      <pubDate>Wed, 28 Aug 2024 08:31:43 +0000</pubDate>
      <link>https://dev.to/gomahan/task-1-45o5</link>
      <guid>https://dev.to/gomahan/task-1-45o5</guid>
      <description>&lt;p&gt;What is Software Testing?&lt;br&gt;
Software testing is a critical discipline within the software development lifecycle aimed at evaluating and validating that a software application meets the desired requirements and functions as expected. In essence, it’s about ensuring that your software works correctly and provides a positive user experience. Testing involves executing the software to identify bugs or issues, verify that it performs as intended, and ensure it meets the specified requirements.&lt;/p&gt;

&lt;p&gt;What You Need to Know About Software Testing&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Types of Testing:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Functional Testing: Focuses on what the software does. It tests the functionalities of the application to ensure they work according to the requirements. Examples include unit testing, integration testing, system testing, and acceptance testing.&lt;br&gt;
Non-Functional Testing: Concerned with how the software performs under various conditions. This includes performance testing (speed and responsiveness), usability testing (user interface and experience), and security testing (vulnerabilities and threats).&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Manual vs. Automated Testing:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Manual Testing: Involves human testers executing test cases and exploring the application to find defects. It’s essential for exploratory and user experience testing.&lt;br&gt;
Automated Testing: Uses tools and scripts to perform repetitive tests. It’s valuable for regression testing and scenarios requiring extensive testing efforts, ensuring faster and more reliable results.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Testing Methodologies:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Black-Box Testing: Tests the software’s functionality without examining its internal code or logic. This is ideal for verifying end-to-end scenarios.&lt;br&gt;
White-Box Testing: Involves testing the internal logic and structure of the code. It’s useful for optimizing code and finding hidden errors.&lt;br&gt;
Gray-Box Testing: Combines elements of both black-box and white-box testing, allowing testers to have some knowledge of the internal workings while focusing on the external functionalities.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Test Design Techniques:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Equivalence Partitioning: Divides input data into groups to ensure that test cases cover a broad spectrum of scenarios.&lt;br&gt;
Boundary Value Analysis: Focuses on testing the limits or edges of input values to identify potential issues.&lt;br&gt;
Exploratory Testing: Involves testing without predefined test cases, allowing testers to discover unexpected issues through exploration.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Defect Life Cycle:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Understanding how defects are reported, tracked, and resolved is crucial. This involves documenting the defect, assigning it to the appropriate team, and verifying the fix.&lt;br&gt;
The Relevance of Software Testing&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Ensures Quality:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Software testing is fundamental to ensuring the quality and reliability of the software product. By catching bugs and issues early, testing helps deliver a stable and functional application to users, enhancing their overall experience.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Cost-Effective:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Identifying and fixing defects during development is far less expensive than addressing them after the software has been deployed. Effective testing can save time and money by preventing costly post-release fixes and ensuring a smoother launch.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Manages Risks:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Testing helps identify potential risks and vulnerabilities in the software. This is especially important for applications in critical sectors such as healthcare, finance, and transportation, where defects could have serious implications.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Compliance:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Many industries have strict regulatory standards that require thorough testing. Compliance with these standards helps in avoiding legal issues and maintaining industry certifications.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Enhances User Experience:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A well-tested software product ensures a seamless and enjoyable experience for users. By validating functionality and usability, testing helps in creating software that meets user expectations and needs.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Competitive Advantage:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;High-quality software that is free of major defects can set a product apart from its competitors. It can lead to positive reviews, customer satisfaction, and increased market share.&lt;br&gt;
Conclusion&lt;br&gt;
Software testing is not just a phase in the development cycle but an ongoing process that is essential for delivering high-quality software. Understanding the various types of testing, methodologies, and the relevance of testing can significantly contribute to the success of a software project. By investing in thorough testing, organizations can ensure that their software is reliable, user-friendly, and stands out in a competitive market.&lt;br&gt;
Software testing is a critical discipline within the software development lifecycle aimed at evaluating and validating that a software application meets the desired requirements and functions as expected. In essence, it’s about ensuring that your software works correctly and provides a positive user experience. Testing involves executing the software to identify bugs or issues, verify that it performs as intended, and ensure it meets the specified requirements.&lt;/p&gt;

&lt;p&gt;What You Need to Know About Software Testing&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Types of Testing:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Functional Testing: Focuses on what the software does. It tests the functionalities of the application to ensure they work according to the requirements. Examples include unit testing, integration testing, system testing, and acceptance testing.&lt;br&gt;
Non-Functional Testing: Concerned with how the software performs under various conditions. This includes performance testing (speed and responsiveness), usability testing (user interface and experience), and security testing (vulnerabilities and threats).&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Manual vs. Automated Testing:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Manual Testing: Involves human testers executing test cases and exploring the application to find defects. It’s essential for exploratory and user experience testing.&lt;br&gt;
Automated Testing: Uses tools and scripts to perform repetitive tests. It’s valuable for regression testing and scenarios requiring extensive testing efforts, ensuring faster and more reliable results.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Testing Methodologies:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Black-Box Testing: Tests the software’s functionality without examining its internal code or logic. This is ideal for verifying end-to-end scenarios.&lt;br&gt;
White-Box Testing: Involves testing the internal logic and structure of the code. It’s useful for optimizing code and finding hidden errors.&lt;br&gt;
Gray-Box Testing: Combines elements of both black-box and white-box testing, allowing testers to have some knowledge of the internal workings while focusing on the external functionalities.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Test Design Techniques:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Equivalence Partitioning: Divides input data into groups to ensure that test cases cover a broad spectrum of scenarios.&lt;br&gt;
Boundary Value Analysis: Focuses on testing the limits or edges of input values to identify potential issues.&lt;br&gt;
Exploratory Testing: Involves testing without predefined test cases, allowing testers to discover unexpected issues through exploration.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Defect Life Cycle:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Understanding how defects are reported, tracked, and resolved is crucial. This involves documenting the defect, assigning it to the appropriate team, and verifying the fix.&lt;br&gt;
The Relevance of Software Testing&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Ensures Quality:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Software testing is fundamental to ensuring the quality and reliability of the software product. By catching bugs and issues early, testing helps deliver a stable and functional application to users, enhancing their overall experience.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Cost-Effective:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Identifying and fixing defects during development is far less expensive than addressing them after the software has been deployed. Effective testing can save time and money by preventing costly post-release fixes and ensuring a smoother launch.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Manages Risks:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Testing helps identify potential risks and vulnerabilities in the software. This is especially important for applications in critical sectors such as healthcare, finance, and transportation, where defects could have serious implications.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Compliance:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Many industries have strict regulatory standards that require thorough testing. Compliance with these standards helps in avoiding legal issues and maintaining industry certifications.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Enhances User Experience:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A well-tested software product ensures a seamless and enjoyable experience for users. By validating functionality and usability, testing helps in creating software that meets user expectations and needs.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Competitive Advantage:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;High-quality software that is free of major defects can set a product apart from its competitors. It can lead to positive reviews, customer satisfaction, and increased market share.&lt;br&gt;
Conclusion&lt;br&gt;
Software testing is not just a phase in the development cycle but an ongoing process that is essential for delivering high-quality software. Understanding the various types of testing, methodologies, and the relevance of testing can significantly contribute to the success of a software project. By investing in thorough testing, organizations can ensure that their software is reliable, user-friendly, and stands out in a competitive market.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Task 4</title>
      <dc:creator>Gomahan</dc:creator>
      <pubDate>Thu, 18 Apr 2024 05:44:53 +0000</pubDate>
      <link>https://dev.to/gomahan/task-4-5dd4</link>
      <guid>https://dev.to/gomahan/task-4-5dd4</guid>
      <description>&lt;p&gt;Manual testing, a traditional approach to software quality assurance, involves human testers executing test cases without the aid of automated tools. While automation has gained significant traction in recent years, manual testing remains an integral part of the testing process, offering unique advantages and facing distinct challenges. In this blog post, we'll delve into the benefits and drawbacks of manual testing, supported by real-world examples.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Benefits of Manual Testing:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Exploratory Testing:&lt;/strong&gt; One of the primary advantages of manual testing is its ability to uncover unexpected issues through exploratory testing. Human testers can intuitively explore the software, simulating real-world usage scenarios and identifying usability issues, edge cases, and subtle bugs that may go unnoticed in automated tests.Example: Consider a social media platform undergoing manual testing. Testers might discover usability issues related to the user interface, such as unintuitive navigation or inconsistent design elements, that automated tests might overlook.&lt;/p&gt;

&lt;p&gt;Early Feedback: Manual testing facilitates early feedback by allowing testers to evaluate the software's functionality and user experience in real-time. This enables stakeholders to identify issues promptly and make necessary adjustments before the software progresses further in the development lifecycle, reducing the cost of fixing defects later on.&lt;br&gt;
Example: In the case of a mobile banking application, manual testers might uncover critical usability issues during early testing stages, such as difficulties in completing transactions or inconsistencies in account balance updates. Addressing these issues promptly can prevent customer dissatisfaction and potential financial losses.&lt;/p&gt;

&lt;p&gt;Adaptability to Change: Manual testing offers flexibility and adaptability, allowing testers to quickly modify test cases or explore new areas of the software as requirements evolve. Human testers can leverage their domain knowledge and intuition to adjust testing strategies based on emerging risks or changes in business priorities.&lt;br&gt;
Example: Suppose a retail website undergoes manual testing. Testers may need to adapt their test cases to accommodate new features or changes in user workflows, ensuring comprehensive coverage of the application's functionality.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Drawbacks of Manual Testing:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Time-Consuming and Resource-Intensive: Manual testing can be time-consuming and resource-intensive, especially for large-scale or complex software projects. Human testers must manually execute test cases, document results, and repeat tests across different environments and configurations, leading to delays in the testing process.Example: In the case of an enterprise resource planning (ERP) system, manual testers may spend considerable time verifying various modules and functionalities across different devices and browsers, prolonging the overall testing timeline.&lt;/p&gt;

&lt;p&gt;Prone to Human Error: Despite the expertise of manual testers, the testing process is inherently susceptible to human error. Testers may overlook critical defects, misinterpret requirements, or introduce inconsistencies in test execution, leading to incomplete or inaccurate test results.Example: During manual testing of a healthcare application, testers might overlook a critical security vulnerability that could compromise patient data, highlighting the risk of human error in ensuring software quality.&lt;/p&gt;

&lt;p&gt;Limited Reusability and Scalability: Manual test cases are typically designed for specific scenarios and may lack reusability across different iterations or releases of the software. As the software evolves, manual testing becomes increasingly laborious and impractical, limiting scalability and hindering the efficiency of the testing process.Example: In a software-as-a-service (SaaS) platform undergoing frequent updates, manual testers may struggle to maintain and execute test cases across multiple versions, leading to inefficiencies and potential gaps in test coverage.&lt;/p&gt;

&lt;p&gt;In conclusion, while manual testing offers distinct advantages such as exploratory testing, early feedback, and adaptability to change, it also faces challenges related to time constraints, human error, and scalability. To maximize the benefits of manual testing while mitigating its drawbacks, organizations should adopt a balanced approach that combines manual testing with automated testing techniques, leveraging the strengths of each approach to ensure comprehensive test coverage and deliver high-quality software products.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Task 3</title>
      <dc:creator>Gomahan</dc:creator>
      <pubDate>Thu, 18 Apr 2024 05:15:07 +0000</pubDate>
      <link>https://dev.to/gomahan/task-3-4kjn</link>
      <guid>https://dev.to/gomahan/task-3-4kjn</guid>
      <description>&lt;p&gt;In the realm of software development, ensuring the quality and reliability of an application is paramount. Among the various methodologies and techniques employed for this purpose, two stand out prominently: functional testing and non-functional testing. While both are essential components of the testing process, they serve distinct purposes and address different aspects of software quality. In this blog post, we'll delve into the nuances of functional testing and non-functional testing, exploring their differences through illustrative examples.&lt;/p&gt;

&lt;p&gt;Functional Testing: Ensuring the Software Does What It's Supposed to Do&lt;/p&gt;

&lt;p&gt;Functional testing revolves around verifying that the software behaves in accordance with the specified functional requirements. It seeks to answer the fundamental question: Does the software do what it's supposed to do? This type of testing examines the application's features, functionalities, and interactions to ensure they align with the intended behavior.&lt;/p&gt;

&lt;p&gt;Let's consider some examples of functional testing methodologies:&lt;/p&gt;

&lt;p&gt;Unit Testing: At the granular level, unit testing involves testing individual units or components of the software in isolation. Developers write test cases to validate the correctness of functions, methods, or procedures.&lt;br&gt;
Integration Testing: As the software evolves, different modules or components need to work together seamlessly. Integration testing focuses on verifying these interactions, ensuring that integrated units function as expected.&lt;br&gt;
System Testing: Taking a holistic approach, system testing evaluates the entire system as a cohesive entity. It assesses whether the software meets the specified requirements and performs its intended functions across various scenarios.&lt;br&gt;
User Acceptance Testing (UAT): In UAT, end-users or stakeholders validate the software's suitability for use in real-world scenarios. This testing phase ensures that the software meets business requirements and satisfies user expectations.&lt;br&gt;
To illustrate functional testing in action, let's consider an example of an e-commerce website. Functional testing would involve scenarios such as adding items to the shopping cart, processing orders, applying discounts, and generating invoices. By meticulously examining each function, testers can ensure that the website functions flawlessly from a user perspective.&lt;/p&gt;

&lt;p&gt;Non-Functional Testing: Assessing How Well the Software Performs&lt;/p&gt;

&lt;p&gt;While functional testing focuses on what the software does, non-functional testing shifts the focus to how well it does it. This type of testing evaluates attributes such as performance, usability, reliability, and security, which are critical for delivering a satisfactory user experience.&lt;/p&gt;

&lt;p&gt;Let's explore some examples of non-functional testing:&lt;/p&gt;

&lt;p&gt;Performance Testing: Assessing the system's responsiveness, scalability, and stability under various conditions. Load testing, stress testing, and endurance testing are common performance testing techniques.&lt;br&gt;
Usability Testing: Evaluating the software's user interface, navigation flow, and overall user experience. Usability testing helps identify areas for improvement to enhance user satisfaction and efficiency.&lt;br&gt;
Reliability Testing: Verifying the software's ability to perform consistently and reliably over time. This includes testing for failure recovery, error handling, and system resilience.&lt;br&gt;
Security Testing: Identifying vulnerabilities and ensuring that the software is secure against potential threats and breaches. Security testing encompasses techniques such as penetration testing, vulnerability scanning, and authentication testing.&lt;br&gt;
Continuing with our e-commerce website example, non-functional testing would involve assessing factors such as page load times, checkout process efficiency, site responsiveness under heavy traffic, and robustness against security threats. By addressing these aspects, testers can ensure that the website not only functions correctly but also delivers a seamless and secure user experience.&lt;/p&gt;

&lt;p&gt;In conclusion, functional testing and non-functional testing are complementary yet distinct facets of the software testing process. While functional testing verifies the software's adherence to functional requirements, non-functional testing evaluates its performance, usability, reliability, and security. By incorporating both types of testing into the development lifecycle, organizations can enhance the quality, reliability, and user satisfaction of their software applications.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Task 2</title>
      <dc:creator>Gomahan</dc:creator>
      <pubDate>Fri, 01 Mar 2024 14:24:34 +0000</pubDate>
      <link>https://dev.to/gomahan/task-2-57b</link>
      <guid>https://dev.to/gomahan/task-2-57b</guid>
      <description>&lt;p&gt;Boundary value testing…?&lt;/p&gt;

&lt;p&gt;Boundary value analysis is a testing technique that focuses on testing the boundary conditions of a system. The main objective is to identify and test the values at the boundaries, which are often the most vulnerable points in a software application. These boundary testing is included with some limitations in types of input and output limits following to the other type of boundary that is relevant to the system being tested. &lt;br&gt;
The BVA concept is based on the assumption of values rather than testing within the range of acceptable values the errors are more likely to occur at the boundaries of input values This is because the boundary values are usually handled differently by the software application, and any discrepancies in the handling of these values can result in errors.&lt;br&gt;
For example, let’s consider a software application that accepts input values in the range of 1 to 100. The boundary values, in this case, would be 1, 100, and values close to them, such as 2, 99, etc. Testing the boundary values would involve checking how the software application behaves when it receives input values at the edge of the acceptable range. This includes testing values such as 0, 101, -1, 102, and so on. BVA should not approached as a sole testing technique rather than an heuristic technique.&lt;/p&gt;

&lt;p&gt;Decision table testing…?&lt;/p&gt;

&lt;p&gt;Decision table testing is a precise methodology that permits analyzers to assess different mixes of sources of info and conditions, guaranteeing thorough test coverage for complex business rules. In this article, we will investigate choice table testing top to bottom, giving down to earth guides to represent its application and advantages in true situations.&lt;/p&gt;

&lt;p&gt;Example 1: Loan Approval System&lt;br&gt;
Let's consider a loan approval system that determines whether a customer is eligible for a loan based on their credit score, income, and loan amount. The decision table for this scenario would look like:&lt;br&gt;
￼&lt;/p&gt;

&lt;p&gt;By using decision table testing, analyzers can efficiently assess various blends of conditions and come to informed conclusions about test inclusion. The viable models gave in this article exhibit the application and advantages of decision table testing in certifiable model.&lt;/p&gt;

&lt;p&gt;Use case testing…?&lt;/p&gt;

&lt;p&gt;It is a record of interactions between an actor and a system. In order to achieve user credentials, certain terms are required to follow like &lt;br&gt;
•Interaction&lt;br&gt;
.Actor&lt;br&gt;
.System &lt;/p&gt;

&lt;p&gt;WHO WORKS WITH USE CASES…&lt;br&gt;
Use cases are made for posting conceivable client activities and checking planned framework usefulness. They have essential significance for:&lt;/p&gt;

&lt;p&gt;Stakeholder’s…..who can utilize this archive to all the more likely handle programming necessities. For example, use cases can be accumulated into a diagram of programming capabilities and execution. Which can be introduced to the stakeholders to sum up accessible tasks. &lt;/p&gt;

&lt;p&gt;Developers:&lt;br&gt;
who can use cases as rules for putting together framework prerequisites. For instance, a utilization case directs the login capability. In this manner, an engineer needs to code the module liable for its effective finishing. &lt;/p&gt;

&lt;p&gt;QA trained professionals…&lt;br&gt;
who apply use cases as a reason for composing experiments. Since the previous characterize the interaction stream, calling attention to how things can veer off-track becomes more straightforward. At the point when you have a client/framework guide, deciding how and where potential issues can happen is substantially more effective.&lt;/p&gt;

&lt;p&gt;Use case testing explanation with examples &lt;br&gt;
￼&lt;br&gt;
￼&lt;/p&gt;

&lt;p&gt;LCSAJ…?&lt;br&gt;
Technically it falls under white box testing&lt;br&gt;
The expansion of LCSAJ is linear code sequence and jump&lt;/p&gt;

&lt;p&gt;This level of the code is executed with the current test cases . It helps in planning new test cases, which can expand the inclusion of the code under test. When the code inclusion arrives at a specific level, we can stop the testing. Consequently, LCSAJ strategy helps in deciding when to stop the product testing &lt;/p&gt;

&lt;p&gt;Each LCSAJ addresses a code segment that executes consecutively from the beginning stage to the ending point, and afterward breaks the successive stream to move the control stream.&lt;/p&gt;

&lt;p&gt;Each line of code has thickness, i.e., the times a line number shows up in LCSAJs. For instance, the line number 7 has a thickness of 7 since it shows up in 7 LCSAJs.&lt;/p&gt;

&lt;p&gt;100 percent LCSAJ inclusion will be accomplished assuming the test information covers all the above LCSAJs in the table.&lt;/p&gt;

&lt;p&gt;Statement Coverage = Number of executable statements executed x 100&lt;br&gt;
                        Total number of executable statements&lt;br&gt;
Decision Coverage = Number of decisions exercised x 100&lt;br&gt;
                        Total number of decisions&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Task 1</title>
      <dc:creator>Gomahan</dc:creator>
      <pubDate>Sun, 04 Feb 2024 16:42:35 +0000</pubDate>
      <link>https://dev.to/gomahan/task-1-5db4</link>
      <guid>https://dev.to/gomahan/task-1-5db4</guid>
      <description>&lt;p&gt;Software testing &lt;br&gt;
What is software testing...?&lt;br&gt;
The basis of software testing process are the requirements to fulfil the business logic which do ensure the effectiveness of the software by resolving the missing gaps in the process of testing the function, performance and quality of the software. As this method entirely falls under software the test execution is controlled by automation tools.&lt;/p&gt;

&lt;p&gt;The vital part of this software testing usually comes with complex software testing activities which does evolved with new approaches and techniques. This chain of testing process has to be conducted to execute the End product without bugs or any negative impact on the bottom line of the product before its actual launch to the customers.&lt;/p&gt;

&lt;p&gt;What we need to know about software testing..?&lt;/p&gt;

&lt;p&gt;There are &lt;br&gt;
1.Software testing life cycle(STLC)&lt;br&gt;
2.Software testing models&lt;br&gt;
And there are optimal methodologies which are mandatory in order to proceed the testing.&lt;br&gt;
As we get into software lifecycle it drives us into two major testing branches (Dynamic and static testing)&lt;br&gt;
In Dynamic testing is where we evaluate the accuracy and the behaviour of the code with “unit testing”,”integration”,”end to end”system,till “User acceptance testing”.after these functional testing, there are testing which evaluate non functional behaviour of the software specifically the performance to ensure the quality of the software through speed,load and stress where these results would reflect more on the usability and effectiveness of the software product. &lt;br&gt;
As these test has all been done there are methodologies thats been followed for the testers which we call that as “Black Box” testing where the tester doesn’t require much programming language because the test case determines only the functionality of external structures by an evaluation of a simple output. But when it’s comes to testing the system internal coding and algorithms that is where the “White Box” testing comes in which also mandates the tester knowledge in coding. There is one more testing in mixed shade of black and white is named as “Grey Box” as the name itself describes the functions of testers potential their knowledge mandated in both internal and external structures of the system.&lt;br&gt;
In static testing instead of executing the actual code,it is more of a testing based on reviewing the supporting documentation of the product also analysing the data flow and control flow that determines the potential bugs and its behaviour in statements and style guides &lt;br&gt;
   Even though the above testing and methodologies are efficient enough but it is not flawless when it comes time management specifically while resolving the product issues on the testers side. So in order to tackle redundancy the new testing models has introduced which implements the waterfall and Agile methodology that derived into the model called V model , pyramid model and honeycomb model. &lt;br&gt;
The V model has opened a path to derive the test cases in the real time which improved the time efficiency between testers and programmers likewise based on modern API infrastructure like “cloud” the above following model has been used.&lt;/p&gt;

&lt;p&gt;So finally what’s the relevance of software testing..?&lt;/p&gt;

&lt;p&gt;The relevance of testing plays a crucial role in determining the overall experience of the product before it has been delivered to the customer. This software testing validates every functional component to make sure its error free by going through various testing phases meanwhile this testing also has to accommodate the new changes which has to be adapted by chain of functions which followed by the testers who implement the test cases and methodology to proceed an efficient testing which satisfies the related standards and guidelines based on requirements of customer.&lt;br&gt;
The ultimate end goal of software testing is always to deliver a satisfactory reliable product. In this I’ve learned in order to become an efficient tester I should be aware how many phases the product has go through and figuring out key communication to connect data flow and function which is significant to derive the test cases in real time. Also developing an effective communication and understanding between programmers and testing is most significant in this entire environment of testing.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Task 1</title>
      <dc:creator>Gomahan</dc:creator>
      <pubDate>Sun, 04 Feb 2024 16:42:34 +0000</pubDate>
      <link>https://dev.to/gomahan/task-1-4ei4</link>
      <guid>https://dev.to/gomahan/task-1-4ei4</guid>
      <description>&lt;p&gt;Software testing &lt;br&gt;
What is software testing...?&lt;br&gt;
The basis of software testing process are the requirements to fulfil the business logic which do ensure the effectiveness of the software by resolving the missing gaps in the process of testing the function, performance and quality of the software. As this method entirely falls under software the test execution is controlled by automation tools.&lt;/p&gt;

&lt;p&gt;The vital part of this software testing usually comes with complex software testing activities which does evolved with new approaches and techniques. This chain of testing process has to be conducted to execute the End product without bugs or any negative impact on the bottom line of the product before its actual launch to the customers.&lt;/p&gt;

&lt;p&gt;What we need to know about software testing..?&lt;/p&gt;

&lt;p&gt;There are &lt;br&gt;
1.Software testing life cycle(STLC)&lt;br&gt;
2.Software testing models&lt;br&gt;
And there are optimal methodologies which are mandatory in order to proceed the testing.&lt;br&gt;
As we get into software lifecycle it drives us into two major testing branches (Dynamic and static testing)&lt;br&gt;
In Dynamic testing is where we evaluate the accuracy and the behaviour of the code with “unit testing”,”integration”,”end to end”system,till “User acceptance testing”.after these functional testing, there are testing which evaluate non functional behaviour of the software specifically the performance to ensure the quality of the software through speed,load and stress where these results would reflect more on the usability and effectiveness of the software product. &lt;br&gt;
As these test has all been done there are methodologies thats been followed for the testers which we call that as “Black Box” testing where the tester doesn’t require much programming language because the test case determines only the functionality of external structures by an evaluation of a simple output. But when it’s comes to testing the system internal coding and algorithms that is where the “White Box” testing comes in which also mandates the tester knowledge in coding. There is one more testing in mixed shade of black and white is named as “Grey Box” as the name itself describes the functions of testers potential their knowledge mandated in both internal and external structures of the system.&lt;br&gt;
In static testing instead of executing the actual code,it is more of a testing based on reviewing the supporting documentation of the product also analysing the data flow and control flow that determines the potential bugs and its behaviour in statements and style guides &lt;br&gt;
   Even though the above testing and methodologies are efficient enough but it is not flawless when it comes time management specifically while resolving the product issues on the testers side. So in order to tackle redundancy the new testing models has introduced which implements the waterfall and Agile methodology that derived into the model called V model , pyramid model and honeycomb model. &lt;br&gt;
The V model has opened a path to derive the test cases in the real time which improved the time efficiency between testers and programmers likewise based on modern API infrastructure like “cloud” the above following model has been used.&lt;/p&gt;

&lt;p&gt;So finally what’s the relevance of software testing..?&lt;/p&gt;

&lt;p&gt;The relevance of testing plays a crucial role in determining the overall experience of the product before it has been delivered to the customer. This software testing validates every functional component to make sure its error free by going through various testing phases meanwhile this testing also has to accommodate the new changes which has to be adapted by chain of functions which followed by the testers who implement the test cases and methodology to proceed an efficient testing which satisfies the related standards and guidelines based on requirements of customer.&lt;br&gt;
The ultimate end goal of software testing is always to deliver a satisfactory reliable product. In this I’ve learned in order to become an efficient tester I should be aware how many phases the product has go through and figuring out key communication to connect data flow and function which is significant to derive the test cases in real time. Also developing an effective communication and understanding between programmers and testing is most significant in this entire environment of testing.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
