<?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: rajya shree</title>
    <description>The latest articles on DEV Community by rajya shree (@rajya_shree_0c5bc00f701b1).</description>
    <link>https://dev.to/rajya_shree_0c5bc00f701b1</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3583025%2Fa4dfd675-9c43-4a55-899e-91e9f7619d32.jpg</url>
      <title>DEV Community: rajya shree</title>
      <link>https://dev.to/rajya_shree_0c5bc00f701b1</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/rajya_shree_0c5bc00f701b1"/>
    <language>en</language>
    <item>
      <title>SELENIUM ARCHITECTURE</title>
      <dc:creator>rajya shree</dc:creator>
      <pubDate>Fri, 23 Jan 2026 15:33:54 +0000</pubDate>
      <link>https://dev.to/rajya_shree_0c5bc00f701b1/selenium-architecture-15d8</link>
      <guid>https://dev.to/rajya_shree_0c5bc00f701b1/selenium-architecture-15d8</guid>
      <description>&lt;p&gt;Selenium is designed to automate web browsers by sending commands from  test scripts to browsers and receiving responses back. It basically follows a Client-Server architecture.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Main Components of Selenium Architecture:&lt;/strong&gt;&lt;br&gt;
--&amp;gt;Test Scripts(client language)&lt;br&gt;
--&amp;gt;Selenium client Library&lt;br&gt;
--&amp;gt;W3C webDriver Protocol&lt;br&gt;
--&amp;gt;Browser Drivers&lt;br&gt;
--&amp;gt;Real Browser&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Test Script(Client Language):&lt;/strong&gt;&lt;br&gt;
   It is basically written by tester using this programming languages:&lt;br&gt;
--&amp;gt;c#&lt;br&gt;
--&amp;gt;Java&lt;br&gt;
--&amp;gt;Javascript&lt;br&gt;
  &lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
  from selenium import webdriver&lt;br&gt;
  driver = webdriver.Chrome()&lt;br&gt;
  driver.get("&lt;a href="https://google.com%22" rel="noopener noreferrer"&gt;https://google.com"&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Selenium client Library:&lt;/strong&gt;&lt;br&gt;
   It is a language-specific binding by selenium. Test Script and selenium WebDriver converts as a python commands into standard WebDriver commands.&lt;br&gt;
  &lt;strong&gt;Example:&lt;/strong&gt; selenium-python, selenium-java, selenium-dotnet.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;W3C WebDriver Protocol&lt;/strong&gt;&lt;br&gt;
   A communication protocol used to send commands from Selenium client to the browser driver.&lt;br&gt;
   It enables language-independent communication and ensures uniform interaction between Selenium and browsers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Browser Drivers:&lt;/strong&gt;&lt;br&gt;
   Each browser has its own Driver&lt;br&gt;
      Chrome - ChromeDriver&lt;br&gt;
      Firefox - GeckoDriver&lt;br&gt;
      Edge - EdgeDriver&lt;br&gt;
      Safari - SafariDriver&lt;br&gt;
   &lt;strong&gt;Example:&lt;/strong&gt; driver.find_element(BY.ID, "login").click()&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Real Browser:&lt;/strong&gt;&lt;br&gt;
   The actual browser installed on the system.&lt;br&gt;
  Executes:&lt;br&gt;
   Clicks&lt;br&gt;
   Typing&lt;br&gt;
   Page navigation&lt;br&gt;
Returns results (success, failure, error).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SIGNIFICANCE OF PYTHON VIRTUAL ENVIRONMENT&lt;/strong&gt;&lt;br&gt;
A python Virtual Environment(venv) that allows you to install and manage python packages separately for each project without any conflicts of other  projects.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Examples of Virtual Environment Usage&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Example:&lt;/strong&gt; Selenium Automation Project&lt;br&gt;
pip install selenium pytest webdriver-manager&lt;br&gt;
-&amp;gt;Installed only for this automation project&lt;br&gt;
-&amp;gt;No impact on other projects&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tools for Virtual Environments:&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Tools and Description&lt;/strong&gt;&lt;br&gt;
1.venv--&amp;gt;Built-in (recommended)&lt;br&gt;
2.virtualenv--&amp;gt;Advanced features&lt;br&gt;
3.conda--&amp;gt;Popular in data science&lt;br&gt;
4.pipenv--&amp;gt;Combines pip + venv&lt;br&gt;
5.poetry--&amp;gt;Dependency management&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Summary&lt;/strong&gt;&lt;br&gt;
Python virtual environments make our projects independent, stable, and maintainable.&lt;/p&gt;

</description>
      <category>architecture</category>
      <category>automation</category>
      <category>testing</category>
      <category>webdev</category>
    </item>
    <item>
      <title>SELENIUM</title>
      <dc:creator>rajya shree</dc:creator>
      <pubDate>Thu, 01 Jan 2026 15:47:24 +0000</pubDate>
      <link>https://dev.to/rajya_shree_0c5bc00f701b1/selenium-4cff</link>
      <guid>https://dev.to/rajya_shree_0c5bc00f701b1/selenium-4cff</guid>
      <description>&lt;p&gt;&lt;strong&gt;WHAT IS SELENIUM?&lt;/strong&gt;&lt;br&gt;
    Selenium is an open source automation testing tool used to automate web applications. It allows testers to simulates real user actions on a browser which are:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;*Opening a website
*Clicking buttons and links
*Entering text in input fields
*Submitting forms
*Validating UI behavior
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Selenium Components:&lt;/strong&gt;&lt;br&gt;
    *Selenium Web Driver-It automates browsers&lt;br&gt;
    *Selenium IDE-It record and playback too&lt;br&gt;
    *Selenium Grid-Run tests in parallel on multiple machines&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;WHY DO WE USE SELENIUM?&lt;/strong&gt;&lt;br&gt;
    Selenium offers many advantages:&lt;br&gt;
    1.&lt;strong&gt;Open source and free&lt;/strong&gt; - No license cost&lt;br&gt;
    2.&lt;strong&gt;Supports multiple Browsers&lt;/strong&gt; - Chrome, Firefox, Edge and safari&lt;br&gt;
    3.&lt;strong&gt;Supports multiple Languages&lt;/strong&gt; - Python, c#, Java script, Ruby&lt;br&gt;
    4.&lt;strong&gt;Cross-Platform&lt;/strong&gt; - It works on windows, mac-OS and Linux&lt;br&gt;
    5.&lt;strong&gt;Real browser Interaction&lt;/strong&gt; - Tests the application exactly as a real user&lt;br&gt;
    6.&lt;strong&gt;Easy Integration&lt;/strong&gt; - It works well with Testing frameworks like&lt;br&gt;
         --&amp;gt;Pytest&lt;br&gt;
         --&amp;gt;unittest&lt;br&gt;
         --&amp;gt;Behave(BDD)&lt;br&gt;
         --&amp;gt;Integrates with CI/CD tools(Jenkins, Github actions)&lt;br&gt;
    7.&lt;strong&gt;Strong Community Support&lt;/strong&gt; -  Huge documentation and online help&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Relevance of Selenium in Automation Testing Using Python:&lt;/strong&gt;&lt;br&gt;
   &lt;strong&gt;Simple &amp;amp; Readable Syntax&lt;/strong&gt;&lt;br&gt;
     Python code is easy to write and understand&lt;br&gt;
     Faster automation development&lt;br&gt;
   &lt;strong&gt;Powerful Test Frameworks&lt;/strong&gt;&lt;br&gt;
     PyTest → fixtures, reports, parallel execution&lt;br&gt;
     Unittest → built-in framework&lt;br&gt;
     Behave → BDD approach&lt;br&gt;
   &lt;strong&gt;Easy Maintenance&lt;/strong&gt;&lt;br&gt;
     Less code → easier updates when UI changes&lt;br&gt;
   &lt;strong&gt;Supports Modern Automation Concepts&lt;/strong&gt;&lt;br&gt;
     Page Object Model (POM)&lt;br&gt;
     Data-Driven Testing&lt;br&gt;
     Keyword-Driven Testing&lt;br&gt;
   &lt;strong&gt;Ideal for Agile &amp;amp; CI/CD&lt;/strong&gt;&lt;br&gt;
     Python Selenium scripts can be triggered automatically in pipelines&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Real-Time Use of Selenium  in Automation Testing:&lt;/strong&gt;&lt;br&gt;
     *Login pages&lt;br&gt;
     *E-Commerce flows(add to cart, checkout)&lt;br&gt;
     *Form Validation &lt;br&gt;
     *Regression Testing&lt;br&gt;
     *Smoke and Sanity Testing&lt;br&gt;
     *Cross-browser Testing&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Manual Testing Techniques</title>
      <dc:creator>rajya shree</dc:creator>
      <pubDate>Mon, 27 Oct 2025 06:07:40 +0000</pubDate>
      <link>https://dev.to/rajya_shree_0c5bc00f701b1/manual-testing-techniques-589c</link>
      <guid>https://dev.to/rajya_shree_0c5bc00f701b1/manual-testing-techniques-589c</guid>
      <description>&lt;p&gt;&lt;u&gt;&lt;/u&gt; &lt;strong&gt;WHAT IS MANUAL TESTING?&lt;/strong&gt;&lt;br&gt;
   Manual testing is nothing but test cases are executing manually without using any automation tools. It relies on human intuition to identify the bugs and usability issues.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;THE MOST COMMON MANUAL TESTING TECHNIQUES:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.Black box Testing:&lt;/strong&gt;&lt;br&gt;
     . This testing focusing on the functionality of the application without knowing its internal code structures.&lt;br&gt;
     . Its mainly used in system and acceptance testing.&lt;br&gt;
   &lt;strong&gt;example:&lt;/strong&gt; To validate the authentication works correctly (Entering login credentials like username and password).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2.White box Testing&lt;/strong&gt;&lt;br&gt;
      . In this Testing involves internal structures, logic, and code paths.&lt;br&gt;
      . Basically this testing is done by Developers.&lt;br&gt;
    &lt;strong&gt;example:&lt;/strong&gt; checks the both branches of an "If-else" statement.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3.Grey box Testing&lt;/strong&gt;&lt;br&gt;
      . Its the combination of both black box and white box techniques.&lt;br&gt;
    &lt;strong&gt;example:&lt;/strong&gt; To test session expiration or anything  in shopping cart.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4.Functional Testing:&lt;/strong&gt; &lt;br&gt;
         It verifies the application features and focuses on business logic and outputs.&lt;br&gt;
      &lt;strong&gt;Types of Functional Testing:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;      &lt;strong&gt;Smoke Testing:&lt;/strong&gt; It ensures that critical functionalities work after a new build.&lt;/li&gt;
&lt;li&gt;      &lt;strong&gt;Sanity Testing:&lt;/strong&gt; It Processed on specific issues after minor changes.&lt;/li&gt;
&lt;li&gt;      &lt;strong&gt;Regression Testing:&lt;/strong&gt; It ensures that new changes haven’t broken existing functionality.&lt;/li&gt;
&lt;li&gt;      &lt;strong&gt;Integration Testing:&lt;/strong&gt;It checks interaction between modules and systems.&lt;/li&gt;
&lt;li&gt;      &lt;strong&gt;System Testing:&lt;/strong&gt; It validate the complete system as a whole.&lt;/li&gt;
&lt;li&gt;      &lt;strong&gt;User Acceptance Testing:&lt;/strong&gt; Testing by end users to ensure the product meets business needs.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;5. Non Functional Testing:&lt;/strong&gt;&lt;br&gt;
             Testing evaluates performance, usability, reliability and security. &lt;br&gt;
     &lt;strong&gt;Types of Non-Functional Testing:&lt;/strong&gt;&lt;br&gt;
         &lt;strong&gt;Usability Testing:&lt;/strong&gt; It ensures the product is  user-friendly and intuitive.&lt;br&gt;
         &lt;strong&gt;Performance Testing:&lt;/strong&gt; It evaluates responsiveness and stability under load during staging or pre-release.&lt;br&gt;
         &lt;strong&gt;Compatibility Testing:&lt;/strong&gt; It ensures the application performs correctly across different environments like browsers, operating systems.&lt;br&gt;
         &lt;strong&gt;Load Testing:&lt;/strong&gt; It checks how the application behaves under expected user loads.&lt;br&gt;
         &lt;strong&gt;Stress Testing:&lt;/strong&gt; Test the system limits by increasing load beyond expectations.&lt;br&gt;
         &lt;strong&gt;Security Testing:&lt;/strong&gt; It identifies vulnerability that could expose sensitive data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Test Case-Based Technique&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;          &lt;strong&gt;Positive Testing:&lt;/strong&gt; It verifies the system behaves as expected with valid inputs.&lt;/li&gt;
&lt;li&gt;          &lt;strong&gt;Negative Testing:&lt;/strong&gt; It checks how the system handles invalid or unexpected inputs.&lt;/li&gt;
&lt;li&gt;          &lt;strong&gt;Boundary Value Analysis:&lt;/strong&gt; It tests that values at the edge of input ranges.&lt;/li&gt;
&lt;li&gt;          &lt;strong&gt;State Transition Testing:&lt;/strong&gt; It tests that system behavior based on state changes.&lt;/li&gt;
&lt;li&gt;          &lt;strong&gt;Decision Table Testing:&lt;/strong&gt; It uses the tables to represent combinations of inputs and expected outputs.&lt;/li&gt;
&lt;li&gt;          &lt;strong&gt;Error Guessing:&lt;/strong&gt; To expect some common problem areas by tester. In this technique is not systematic but is effective for finding defects quickly.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Localization and Globalization Testing:&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Localization Testing:&lt;/strong&gt; It ensures the application works for specific regions like languages, currencies, data formats. &lt;br&gt;
            &lt;strong&gt;Globalization Testing:&lt;/strong&gt; It verifies that the application can handle global data and users. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion:&lt;/strong&gt;&lt;br&gt;
  Manual Testing brings creativity, human intuition and adaptability that machines cannot replicate. Manual techniques ensure that software is not only functional but also intuitive, accessible, and delightful to use. &lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;BOUNDARY VALUE ANALYSIS&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;What is Boundary Value Analysis?&lt;/strong&gt;&lt;br&gt;
  Boundary Value Analysis is one of the most commonly used black box testing techniques in software testing. This testing technique used to identify errors at the boundaries of input domains. It’s based on the observation that defects often occur at the edges of input values rather than in the middle. This technique is especially useful in functional testing, where inputs are validated against expected outputs.&lt;br&gt;
 &lt;strong&gt;Reason of Boundary Value Analysis&lt;/strong&gt;&lt;br&gt;
     Some defects may often occur at boundaries because of:&lt;br&gt;
      -Programmers may use incorrect comparison operators like "&amp;lt;" instead of "&amp;lt;=".&lt;br&gt;
      -Users give input data at the minimum or maximum allowed limits.&lt;br&gt;
      -Edge conditions are more error-prone due to the logic or data type issues.&lt;br&gt;
&lt;strong&gt;Core Principles of BVA&lt;/strong&gt;&lt;br&gt;
Boundary Value Analysis typically involves testing:&lt;br&gt;
. Minimum boundary value&lt;br&gt;
. Maximum boundary value&lt;br&gt;
. Just below the minimum&lt;br&gt;
. Just above the maximum&lt;br&gt;
. Nominal (valid) value within the range&lt;br&gt;
For example: The login form accepts an age from the range of 18–60:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Test values: 17, 18, 19, 59, 60, 61&lt;br&gt;
This approach ensures coverage of:&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Test values of &lt;strong&gt;Lower boundary&lt;/strong&gt; 17:  &lt;strong&gt;Invalid&lt;/strong&gt; - Just below the minimum&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Test values of &lt;strong&gt;Lower boundary&lt;/strong&gt; 18,19:  &lt;strong&gt;Valid&lt;/strong&gt; - Just above the minimum &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Test values of &lt;strong&gt;Upper boundary&lt;/strong&gt; 59, 60:  &lt;strong&gt;Valid&lt;/strong&gt; - Just below the maximum&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Test values of &lt;strong&gt;Upper boundary&lt;/strong&gt; 61:  &lt;strong&gt;Invalid&lt;/strong&gt; - Just above the maximum&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Types of Boundary Value Analysis&lt;/strong&gt;&lt;br&gt;
   Two types of Boundary Testing Techniques:&lt;br&gt;
&lt;strong&gt;i) Single Input Boundary Testing:&lt;/strong&gt;&lt;br&gt;
    It used when the input field has a single variable or range(like age, marks, or salary)&lt;br&gt;
   &lt;strong&gt;Example:&lt;/strong&gt; Testing minimum and maximum marks allowed in a grade field.&lt;br&gt;
&lt;strong&gt;ii) Multiple Input Boundary Testing:&lt;/strong&gt;&lt;br&gt;
    It used when multiple fields have their own boundaries.&lt;br&gt;
    &lt;strong&gt;Example:&lt;/strong&gt; The login form accepts the age from the range of 18 to 40 and Experience 0 to 10 years.&lt;br&gt;
     This both set of boundaries must be tested individually and or combinations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Real life Example&lt;/strong&gt;&lt;br&gt;
We check a Password Length&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Valid range: 8–20 characters&lt;/li&gt;
&lt;li&gt;Boundary value of test cases: 7, 8, 9, 19, 20, 21&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;i)Test value of &lt;strong&gt;7&lt;/strong&gt; :  &lt;strong&gt;Invalid Password&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;ii)Test value of &lt;strong&gt;8, 9, 19, 20&lt;/strong&gt;:  &lt;strong&gt;Valid Password&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;iii)Test value of &lt;strong&gt;21&lt;/strong&gt;:  &lt;strong&gt;Invalid Password&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pros of BVA&lt;/strong&gt;&lt;br&gt;
. Efficient: Targets high-risk areas with fewer test cases.&lt;br&gt;
. Effective: Catches common boundary-related bugs.&lt;br&gt;
. Simple to apply: Easy to derive test cases from specifications.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Limitations of BVA&lt;/strong&gt;&lt;br&gt;
. Assumes errors only occur at boundaries—not always true.&lt;br&gt;
. May miss logic errors in the middle of input ranges.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Time to Use BVA&lt;/strong&gt;&lt;br&gt;
. Input fields with defined ranges (age, salary, quantity)&lt;br&gt;
. During system testing, integration testing or acceptance testing&lt;br&gt;
. Validations involving minimum/maximum constraints&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Steps of Boundary Value Analysis&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Identify input variables in the requirement function.&lt;/li&gt;
&lt;li&gt;Determine valid input range for each variable.&lt;/li&gt;
&lt;li&gt;Identify boundary values of minimum  and maximum.&lt;/li&gt;
&lt;li&gt;Add test cases for values just below or above boundary.&lt;/li&gt;
&lt;li&gt;Execute test cases &lt;/li&gt;
&lt;li&gt;Log defects if output moves from expected behavior.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
Boundary Value Analysis is the most effective software testing. By focusing on the edges of input domains and helps uncover bugs that might otherwise slip through. Whether we testing a login form, a financial calculator, or a mobile app, BVA ensures your system behaves reliably at its limits.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;u&gt;DECISION TABLE TESTING
&lt;/u&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;br&gt;
       &lt;strong&gt;Definition&lt;/strong&gt;&lt;br&gt;
            Decision Table Testing is a black box test technique used in software testing to  represent and analyze different combination of inputs and their outputs in tabular form. &lt;br&gt;
 &lt;strong&gt;Steps to Create a Decision Table&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;1.Identify all conditions that affect the outcome.&lt;/p&gt;

&lt;p&gt;2.List possible outputs.&lt;/p&gt;

&lt;p&gt;3.Determine all possible combinations of condition outcomes (True/False).&lt;/p&gt;

&lt;p&gt;4.Define which actions should occur for each combination.&lt;/p&gt;

&lt;p&gt;5.Simplify the table by merging or eliminating duplicate rules.&lt;/p&gt;

&lt;p&gt;6.Design test cases — each column (rule) corresponds to one test case.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt; A user is eligible for a discount based on the following conditions.&lt;br&gt;
Condition 1: User is a registered member.&lt;br&gt;
Condition 2: Give 10% discount for Order amount is above rs.500.&lt;br&gt;
Condition 3: Give 5% discount for Order amount is equal to rs.500.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Decision Table&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Conditions&lt;/strong&gt;            &lt;strong&gt;Rule 1&lt;/strong&gt;       &lt;strong&gt;Rule 2&lt;/strong&gt;           &lt;strong&gt;Rule 3&lt;/strong&gt;&lt;br&gt;
   Registered                   T                 T                   F&lt;br&gt;
    number&lt;/p&gt;

&lt;p&gt;Order amount                  T                 T                   F&lt;br&gt;
    &amp;gt;500&lt;/p&gt;

&lt;p&gt;Order amount                  F                  T                   F&lt;br&gt;
   &amp;lt;=500&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Rules Explanation&lt;/strong&gt;&lt;br&gt;
   &lt;strong&gt;Rule 1:&lt;/strong&gt; Registered, Order amount &amp;gt; 500 - 10% discount&lt;br&gt;
   &lt;strong&gt;Rule 2:&lt;/strong&gt; Registered, Order amount &amp;lt;=500 - 5% discount.&lt;br&gt;
   &lt;strong&gt;Rule 3:&lt;/strong&gt; Guest user, Order amount&amp;lt;500 - No Discount.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pros&lt;/strong&gt;&lt;br&gt;
Ensures complete coverage of all possible input combinations.&lt;br&gt;
Simplifies complex business logic.&lt;br&gt;
Helps identify missing conditions or unnecessary rules.&lt;br&gt;
Easy to convert into test cases.&lt;/p&gt;

&lt;p&gt;** Cons**&lt;br&gt;
Can become complex for a large number of conditions.&lt;br&gt;
Not suitable when conditions have many possible values (beyond True/False).&lt;br&gt;
Maintenance can be difficult if rules change often.&lt;/p&gt;

&lt;p&gt;&lt;u&gt;## &lt;strong&gt;The Future of Manual Testing in the age of AI&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Manual Testing&lt;/strong&gt; is developing gradually not to disappearing. In future AI and human intuition which they are combines to play a vital roles, whereas human judgement will not replace.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Exploratory testing:&lt;/strong&gt;  AI can’t replicate the creativity and curiosity of a human tester exploring an app without a script.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Usability and accessibility:&lt;/strong&gt;  Understanding how real users interact with software—especially those with disabilities—requires empathy and context.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Edge cases and suspicion:&lt;/strong&gt;  Manual testers excel at spotting unexpected behaviors that automated scripts might overlook.
Skills Manual Testers Need to Thrive
To stay apt, manual testers should:

&lt;ul&gt;
&lt;li&gt;Learn AI basics: Understand how AI models work and how they influence testing.&lt;/li&gt;
&lt;li&gt;Master exploratory techniques: Become experts in unscripted testing and user empathy.&lt;/li&gt;
&lt;li&gt;Collaborate with automation engineers: Bridge the gap between manual and automated testing.&lt;/li&gt;
&lt;li&gt;Use AI tools: Embrace platforms that assist with test planning, defect prediction, and analytics.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Soft Skills for&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Analytical thinking&lt;/li&gt;
&lt;li&gt;Creative problem solving&lt;/li&gt;
&lt;li&gt;Effective communication&lt;/li&gt;
&lt;li&gt;User empathy and design thinking&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Summary&lt;/strong&gt;&lt;br&gt;
 Overall in the future, Human Intelligence and machine assistance is the&lt;br&gt;
manual testing in the age of AI. &lt;br&gt;
Things we know, AI handles repetitive, data-heavy, and predictable tasks.&lt;br&gt;
However Humans can handle creative, contextual, and judgment-based testing.&lt;br&gt;
Thus the combination ensures higher software quality, better UX, and faster releases.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Boundary Value Analysis(BVA)</title>
      <dc:creator>rajya shree</dc:creator>
      <pubDate>Sat, 25 Oct 2025 17:28:05 +0000</pubDate>
      <link>https://dev.to/rajya_shree_0c5bc00f701b1/boundary-value-analysisbva-2f6o</link>
      <guid>https://dev.to/rajya_shree_0c5bc00f701b1/boundary-value-analysisbva-2f6o</guid>
      <description>&lt;p&gt;&lt;strong&gt;What is Boundary Value Analysis?&lt;/strong&gt;&lt;br&gt;
  Boundary Value Analysis is one of the most commonly used black box testing techniques in software testing. This testing technique used to identify errors at the boundaries of input domains. It’s based on the observation that defects often occur at the edges of input values rather than in the middle. This technique is especially useful in functional testing, where inputs are validated against expected outputs.&lt;br&gt;
 &lt;strong&gt;Reason of Boundary Value Analysis&lt;/strong&gt;&lt;br&gt;
     Some defects may often occur at boundaries because of:&lt;br&gt;
      -Programmers may use incorrect comparison operators like "&amp;lt;" instead of "&amp;lt;=".&lt;br&gt;
      -Users give input data at the minimum or maximum allowed limits.&lt;br&gt;
      -Edge conditions are more error-prone due to the logic or data type issues.&lt;br&gt;
&lt;strong&gt;Core Principles of BVA&lt;/strong&gt;&lt;br&gt;
Boundary Value Analysis typically involves testing:&lt;br&gt;
. Minimum boundary value&lt;br&gt;
. Maximum boundary value&lt;br&gt;
. Just below the minimum&lt;br&gt;
. Just above the maximum&lt;br&gt;
. Nominal (valid) value within the range&lt;br&gt;
For example: The login form accepts an age from the range of 18–60:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Test values: 17, 18, 19, 59, 60, 61&lt;br&gt;
This approach ensures coverage of:&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Test values of &lt;strong&gt;Lower boundary&lt;/strong&gt; 17:  &lt;strong&gt;Invalid&lt;/strong&gt; - Just below the minimum&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Test values of &lt;strong&gt;Lower boundary&lt;/strong&gt; 18,19:  &lt;strong&gt;Valid&lt;/strong&gt; - Just above the minimum &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Test values of &lt;strong&gt;Upper boundary&lt;/strong&gt; 59, 60:  &lt;strong&gt;Valid&lt;/strong&gt; - Just below the maximum&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Test values of &lt;strong&gt;Upper boundary&lt;/strong&gt; 61:  &lt;strong&gt;Invalid&lt;/strong&gt; - Just above the maximum&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Types of Boundary Value Analysis&lt;/strong&gt;&lt;br&gt;
   Two types of Boundary Testing Techniques:&lt;br&gt;
&lt;strong&gt;i) Single Input Boundary Testing:&lt;/strong&gt;&lt;br&gt;
    It used when the input field has a single variable or range(like age, marks, or salary)&lt;br&gt;
   &lt;strong&gt;Example:&lt;/strong&gt; Testing minimum and maximum marks allowed in a grade field.&lt;br&gt;
&lt;strong&gt;ii) Multiple Input Boundary Testing:&lt;/strong&gt;&lt;br&gt;
    It used when multiple fields have their own boundaries.&lt;br&gt;
    &lt;strong&gt;Example:&lt;/strong&gt; The login form accepts the age from the range of 18 to 40 and Experience 0 to 10 years.&lt;br&gt;
     This both set of boundaries must be tested individually and or combinations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Real life Example&lt;/strong&gt;&lt;br&gt;
We check a Password Length&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Valid range: 8–20 characters&lt;/li&gt;
&lt;li&gt;Boundary value of test cases: 7, 8, 9, 19, 20, 21&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;i)Test value of &lt;strong&gt;7&lt;/strong&gt; :  &lt;strong&gt;Invalid Password&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;ii)Test value of &lt;strong&gt;8, 9, 19, 20&lt;/strong&gt;:  &lt;strong&gt;Valid Password&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;iii)Test value of &lt;strong&gt;21&lt;/strong&gt;:  &lt;strong&gt;Invalid Password&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pros of BVA&lt;/strong&gt;&lt;br&gt;
. Efficient: Targets high-risk areas with fewer test cases.&lt;br&gt;
. Effective: Catches common boundary-related bugs.&lt;br&gt;
. Simple to apply: Easy to derive test cases from specifications.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Limitations of BVA&lt;/strong&gt;&lt;br&gt;
. Assumes errors only occur at boundaries—not always true.&lt;br&gt;
. May miss logic errors in the middle of input ranges.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Time to Use BVA&lt;/strong&gt;&lt;br&gt;
. Input fields with defined ranges (age, salary, quantity)&lt;br&gt;
. During system testing, integration testing or acceptance testing&lt;br&gt;
. Validations involving minimum/maximum constraints&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Steps of Boundary Value Analysis&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Identify input variables in the requirement function.&lt;/li&gt;
&lt;li&gt;Determine valid input range for each variable.&lt;/li&gt;
&lt;li&gt;Identify boundary values of minimum  and maximum.&lt;/li&gt;
&lt;li&gt;Add test cases for values just below or above boundary.&lt;/li&gt;
&lt;li&gt;Execute test cases &lt;/li&gt;
&lt;li&gt;Log defects if output moves from expected behavior.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
Boundary Value Analysis is the most effective software testing. By focusing on the edges of input domains and helps uncover bugs that might otherwise slip through. Whether we testing a login form, a financial calculator, or a mobile app, BVA ensures your system behaves reliably at its limits.&lt;/p&gt;

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