<?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: Deepika Vignesh</title>
    <description>The latest articles on DEV Community by Deepika Vignesh (@deepikavignesh1210).</description>
    <link>https://dev.to/deepikavignesh1210</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%2F3235350%2F5fc8c3e9-e320-4bcd-ac5d-d0641104938f.png</url>
      <title>DEV Community: Deepika Vignesh</title>
      <link>https://dev.to/deepikavignesh1210</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/deepikavignesh1210"/>
    <language>en</language>
    <item>
      <title>Python Selenium Architecture &amp; Significance of Python Virtual Environment</title>
      <dc:creator>Deepika Vignesh</dc:creator>
      <pubDate>Fri, 07 Nov 2025 17:23:43 +0000</pubDate>
      <link>https://dev.to/deepikavignesh1210/python-selenium-architecture-significance-of-python-virtual-environment-4g1o</link>
      <guid>https://dev.to/deepikavignesh1210/python-selenium-architecture-significance-of-python-virtual-environment-4g1o</guid>
      <description>&lt;p&gt;The Python Selenium architecture is the structure that enables interaction between Python programs or codes with Web browser through the Selenium Web Drivers API.&lt;/p&gt;

&lt;p&gt;The Selenium Web Driver architecture, when used with Python, involves several key components working together to automate web browser interactions. These includes:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Client Libraries (Python Bindings)

This is the layer where you write your automation scripts in Python.
The Selenium Python bindings provide the API and methods to interact with web elements, perform actions (like clicks, typing), and manage the browser.

JSON Wire Protocol (or W3C Web Driver Protocol)

This acts as a communication bridge between the client libraries and the browser drivers.
It serializes the commands sent from your Python script into a JSON format that the browser drivers can understand, and then deserializes the responses back to Python.
While the JSON Wire Protocol was traditionally used, the W3C Web Driver Protocol is now the recommended standard for enhanced compatibility and consistency across different browsers and drivers.

Browser Drivers

Each browser (e.g., Chrome, Firefox, Edge) has its own specific browser driver (e.g., Chrome Driver, Edge Driver).
These drivers are executables that receive commands from the JSON Wire Protocol (or W3C Web Driver Protocol) and translate them into native browser-specific instructions.
They directly interact with the browser to execute the requested actions and retrieve information about the web page.

Web Browsers

This is the actual web browser instance (e.g., Chrome, Firefox) where the automation commands are executed.
The browser drivers control and interact with this browser to simulate user actions and retrieve data.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;The flow of execution is as follows:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;You write your automation script in Python using the Selenium client libraries.
Your Python script sends commands to the browser driver via the JSON Wire Protocol (or W3C Web Driver Protocol).
The browser driver receives these commands, translates them into browser-specific instructions, and executes them on the web browser.
The browser performs the actions and sends back responses (e.g., element found, action successful) to the browser driver.
The browser driver then sends these responses back to your Python script via the protocol, allowing your script to verify results or continue with further actions.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Press enter or click to view image in full size&lt;br&gt;
Python Selenium Architecture&lt;br&gt;
Significance of Python Virtual Environment&lt;/p&gt;

&lt;p&gt;A virtual environment in Python is an isolated environment on your computer, where you can run and test your Python projects. It allows you to manage project-specific dependencies without interfering with other projects or the original Python installation.&lt;/p&gt;

</description>
      <category>architecture</category>
      <category>automation</category>
      <category>python</category>
    </item>
    <item>
      <title>Manual Testing Techniques - Future of Manual Testing in AI world</title>
      <dc:creator>Deepika Vignesh</dc:creator>
      <pubDate>Sun, 01 Jun 2025 08:16:16 +0000</pubDate>
      <link>https://dev.to/deepikavignesh1210/manual-testing-techniques-future-of-manual-testing-in-ai-world-2ph1</link>
      <guid>https://dev.to/deepikavignesh1210/manual-testing-techniques-future-of-manual-testing-in-ai-world-2ph1</guid>
      <description>&lt;p&gt;We all know testing is a vast domain.&lt;br&gt;
For example when a software is developed, it goes through different phases of testing. The testing phase involves different type of testing like functional to non-functional testing based on the project requirements.&lt;/p&gt;

&lt;p&gt;There are two ways for the testers to carry out the testing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Executing the test cases manually&lt;/li&gt;
&lt;li&gt;Executing the automated test scenarios using automated testing tools like Selenium Web-Driver.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In the tech-advanced world where the automation testing makes life easier for testers it would be normal to assume that manual testing is out of date. But this is completely untrue. So here comes the article to help you understand why manual testing can't be avoided altogether and remains irreplaceable in many contexts.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Manual testing? Why perform Manual testing?&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Manual testing is a type of software testing that involves testers execute test cases step-by-step observing test results firsthand without relying on automated tools/scripts.&lt;br&gt;
While automated testing relies on predefined scripts or tools whereas manual testing offers flexibility and adaptability as human touch is necessary to uncover some issues that automatic tests might overlook.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Key Manual Testing Techniques&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;1.Boundary Value Analysis (BVA):&lt;/strong&gt;&lt;br&gt;
Boundary Value Analysis is a testing technique that focuses on boundaries/edges of the input range.&lt;/p&gt;

&lt;p&gt;Example:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1yl5i6flnibb7vo24btv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1yl5i6flnibb7vo24btv.png" alt="Image description" width="737" height="220"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Equivalence Partitioning:&lt;/strong&gt;&lt;br&gt;
Equivalence partitioning is a software testing technique used to divide input data into sets of equivalent classes, where each class shares similar characteristics and is expected to produce the same output.&lt;/p&gt;

&lt;p&gt;Example: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnyiq0gyruyyi518yrcqy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnyiq0gyruyyi518yrcqy.png" alt="Image description" width="737" height="172"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Future of Manual Testing in AI Driven World
&lt;/h2&gt;

&lt;p&gt;We all know that Software industry is witnessing rapid growth in AI powered testing tools, while AI tools are enhancing software testing by automating repetitive tasks and improving efficiency, they are unlikely to fully replace manual testers. &lt;br&gt;
AI excels in areas like generating test cases and identifying potential issues, but manual testers are needed for exploratory testing, user experience evaluation, and tasks requiring human judgement and creativity. &lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Manual testing supported by testing techniques like Boundary Value Analysis and Equivalence Partitioning continues to be a valuable asset in Quality Assurance. As AI tools evolve the role of manual testers will shift but not disappear.&lt;br&gt;
By collaborating with AI-driven tools and providing valuable insights, manual testers can contribute to the creation of high-quality software products.&lt;/p&gt;

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