<?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: Karthik Vaidesh</title>
    <description>The latest articles on DEV Community by Karthik Vaidesh (@karthik_vaidesh_3fa7580e2).</description>
    <link>https://dev.to/karthik_vaidesh_3fa7580e2</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%2F3473464%2F41ef3119-8b2d-4cb9-ba10-3c05ec01576b.jpg</url>
      <title>DEV Community: Karthik Vaidesh</title>
      <link>https://dev.to/karthik_vaidesh_3fa7580e2</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/karthik_vaidesh_3fa7580e2"/>
    <language>en</language>
    <item>
      <title>Python selenium architecture and Virtual Environment</title>
      <dc:creator>Karthik Vaidesh</dc:creator>
      <pubDate>Wed, 19 Nov 2025 07:57:00 +0000</pubDate>
      <link>https://dev.to/karthik_vaidesh_3fa7580e2/python-selenium-architecture-and-virtual-environment-1p9j</link>
      <guid>https://dev.to/karthik_vaidesh_3fa7580e2/python-selenium-architecture-and-virtual-environment-1p9j</guid>
      <description>&lt;p&gt;Selenium is powerful automation tool used to automate web browsers. Selenium supports cross browser platforms like Chrome,Firefox,Edge and Safari also it supports multiple programming language like Java,C#,Python and Ruby etc&lt;br&gt;
As python is versatile with simple syntax when selenium is used with python it becomes readable and agile automation tool supporting complex workflows make is excellent choice for writing and maintaining test scripts&lt;br&gt;
The architecture of selenium with python is based on client server design where python interacts with browsers via WebDriver and browser specific drivers using standard protocols&lt;br&gt;
The architecture consists of four layers namely Selenium client library, JSON wire protocol, browser driver and browser.&lt;br&gt;
Here’s a detailed breakdown of the architecture and how each component fits together:&lt;/p&gt;

&lt;p&gt;Core Components of Python Selenium Architecture&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Selenium Client Library (Python Bindings)&lt;/li&gt;
&lt;li&gt;This is the Python package (selenium) that provides APIs to write test scripts.&lt;/li&gt;
&lt;li&gt;It translates Python commands into a format that the WebDriver understands.&lt;/li&gt;
&lt;li&gt;Example: driver. Get("&lt;a href="https://example.com%22" rel="noopener noreferrer"&gt;https://example.com"&lt;/a&gt;) is a Python command that gets converted into an HTTP request.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Significance of Python virtual environment
&lt;/h2&gt;

&lt;p&gt;Python virtual environments are crucial for isolating project dependencies avoiding conflicts between different development setups&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Python virtual environment matters
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Isolation dependencies&lt;/strong&gt;&lt;br&gt;
Each project can have its own set of packages versions and preventing classes &lt;br&gt;
example project A uses selenium 4.38.0 and project B may use selenium 4.36.0&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Avoid system pollution&lt;/strong&gt;&lt;br&gt;
Keep system with python installation clean and untouched &lt;br&gt;
example if we install NumPy for a data science project. Without a virtual environment, it affects all Python scripts globally, possibly breaking older ones.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Simplified project management&lt;/strong&gt;&lt;br&gt;
Makes it easier to replicate environment between different machines and teams&lt;br&gt;
example we can share Requirements.txt file which make us install various tools needed for project can be installed by others to working environment using pip install -r requirements.txt&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Name collation prevention&lt;/strong&gt;&lt;br&gt;
Avoids issues when different package has conflicts with names and behaviors&lt;br&gt;
example when we create custom package Utilities, but another installed package also has Utilities module virtual environment prevent such issues&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reproducibility across environment&lt;/strong&gt;&lt;br&gt;
Ensures consistent behavior in development, testing, and production.&lt;br&gt;
Example: A machine learning model trained in one environment behaves identically when deployed elsewhere, thanks to consistent dependencies&lt;/p&gt;

</description>
    </item>
    <item>
      <title>SELENIUM AUTOMATION TOOL</title>
      <dc:creator>Karthik Vaidesh</dc:creator>
      <pubDate>Mon, 10 Nov 2025 07:49:23 +0000</pubDate>
      <link>https://dev.to/karthik_vaidesh_3fa7580e2/selenium-automation-tool-12l1</link>
      <guid>https://dev.to/karthik_vaidesh_3fa7580e2/selenium-automation-tool-12l1</guid>
      <description>&lt;p&gt;Selenium is a automation suite used to automate app based on web browsers&lt;br&gt;
it allows testers and developers to navigate and validate functionalities &lt;br&gt;
Selenium support multiple  browsers (chrome Firefox edge internet explorer safari etc)&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;em&gt;## ****** Why selenium:-**&lt;/em&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;used for regressive testing and data validations&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;reduce manual efforts by automating process&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;cross browser testing environment &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;support multiple programming language like(Java,C#,Python,Php and Ruby)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;supports CICD pipelines enables continuous testing and development &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;works with framework like Pytest,Behave and works with tools like Jenkins and Dockers&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;frequently gets updated as per latest browser platform and programming language&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  ***&lt;em&gt;**Relevance of selenium in automation testing with python&lt;/em&gt;*
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;simplicity of python programming language makes it easy to write selenium scripts using (pytest,unittest)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;selenium uses various components like selenium core, selenium IDE,RC,web-driver and Grid&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;selenium web driver and python allows precise control over browser actions with below attributes like&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Functional testing&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;UI validation&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;data scaping &lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;python bindings with selenium widely used by QA testing community around world&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;we can build robust testing environment using python with selenium using setup and teardown logic ,assertion and reporting etc.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&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%2Fc4il298c8lbqmfsu5opi.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%2Fc4il298c8lbqmfsu5opi.png" alt=" " width="800" height="150"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>manual testing methods</title>
      <dc:creator>Karthik Vaidesh</dc:creator>
      <pubDate>Fri, 05 Sep 2025 07:43:23 +0000</pubDate>
      <link>https://dev.to/karthik_vaidesh_3fa7580e2/manual-testing-methods-5332</link>
      <guid>https://dev.to/karthik_vaidesh_3fa7580e2/manual-testing-methods-5332</guid>
      <description>&lt;p&gt;&lt;strong&gt;Common manual testing technique&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;main criteria of manual testing is to check&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;requirement to meet&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;check quality&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;usability to check &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;impact on end user&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;standard of products&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;manual testing is process where humans involved on testing requirement of software with test cases without involvement of testing tools in manual testing testers stimulate software and check if it meets client requirements by testing its functionality as per the standards which needs to be followed&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Boundary value analysis&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;boundary value techniques are used to validate input vales at their bounded limits, BVA technique is used to test inputs and troubleshoot under boundary conditions only&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;BAV tester needs to check parameter like minimum and maximum acceptable values of each input fields using test cases with following criteria&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;minimum boundary value&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;above minimum value&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;below maximum value&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;maximum boundary value&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;above invalid maximum value&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;below invalid minimum value&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;the above test cases on each and every input fields will make sure application capability to handle inputs under boundaries&lt;/p&gt;

&lt;p&gt;advantages of BVA is tester can identify and fix the bugs which were missed by other validation techniques especially boundary related cases&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Decision table testing&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;Decision table testing is used at an area were multiple validation is needed its a black box with different test cases of various criteria&lt;br&gt;
for example we can take password validation&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%2Fisbos37mx4ebi4c54mu1.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%2Fisbos37mx4ebi4c54mu1.png" alt=" " width="800" height="443"&gt;&lt;/a&gt;&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%2Fjfiedzya2c7nphsmqdar.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%2Fjfiedzya2c7nphsmqdar.png" alt=" " width="723" height="596"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Decision table for above validations&lt;br&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%2Fbt9ua9c4cyvjcmblmrz1.jpg" 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%2Fbt9ua9c4cyvjcmblmrz1.jpg" alt=" " width="800" height="274"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;on above scenario there were predefined conditions for validation below mentioned following advantage of above test conditions&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;input variables and factors based on conditions &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;outputs are based on conditions predefined&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;3.provides all possible possible combinations under conditions&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;gives precise and logical results &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;The future of manual testing on age of AI&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The introduction of AI on field of software testing is blending of automation with human expertise however manual testing remines indispensable at some areas which require creativity, empathy and  intuition&lt;/p&gt;

&lt;p&gt;Both manual tester and AI can go hand on hand with each other as it can save effort and time for tester to use AI for regressive testing data validation and defect tracking &lt;/p&gt;

&lt;p&gt;Ai can analyze historical test data and fix bugs and issues which saves efforts and time taken by humans to finish the task &lt;/p&gt;

&lt;p&gt;Since Ai is on development stage it still lags on (UX) user experience which require human intervention so hybrid model can be implemented to enhance and improve quality of the software so there is need for humans to learn AI and go hand on hand with technology so can provide more relevant and precise solutions &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The future of manual testing will be collaboration of human intelligence with Artificial intelligence where humans and use Ai at very effective way and focus on giving more creative and ethical ideas which could helpful to explore and come with better results  &lt;/p&gt;

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