<?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: DHANUSH</title>
    <description>The latest articles on DEV Community by DHANUSH (@dhanusappa).</description>
    <link>https://dev.to/dhanusappa</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%2F1238095%2F75c385a4-c2e8-4cf2-a364-6ea2c4bbcc68.png</url>
      <title>DEV Community: DHANUSH</title>
      <link>https://dev.to/dhanusappa</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/dhanusappa"/>
    <language>en</language>
    <item>
      <title>PYTHON SELENIUM</title>
      <dc:creator>DHANUSH</dc:creator>
      <pubDate>Sun, 11 May 2025 17:45:54 +0000</pubDate>
      <link>https://dev.to/dhanusappa/python-selenium-2bdf</link>
      <guid>https://dev.to/dhanusappa/python-selenium-2bdf</guid>
      <description>&lt;p&gt;Python selenium archtecture is a layered system that allows developers to automate web browsers using the selenium webdriver APL.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Client Layer(Test Script Layer)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;*Languages supported:&lt;br&gt;
   selenium supports multiple languages like python,java,c#, ruby,and javaScriot, in our case Python is used.&lt;/p&gt;

&lt;p&gt;*Bindings:&lt;br&gt;
   The python bindings are wrappers that translate python commands into http requests understood by webdriver.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Selenium web driver API&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;webdriver is an interface that defines a set method for iterfacing with browsers (.get(),.click(),.send_keys(),etc.)&lt;/li&gt;
&lt;li&gt;The webdriver API is language independent. Whenusing python,python binding convert method calls to JSON over HTTP.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;JSON wire protocol/W3C webdriver protocal&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;This is communication protocol that enables communication between the client and the browser driver.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In older versions selenium used the JSON wire protocol.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;BROWSER DRIVERS:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;These are executables that act as middlemen between selenium and browsers.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;chromedriver for google chrome.&lt;/li&gt;
&lt;li&gt;geckodriver for firefox&lt;/li&gt;
&lt;li&gt;msedgedriver for microsoft edge.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;BROWSERS.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;The driver controls the browser to perform tasks like loading pages, clicking buttons filling forms. etc.&lt;/li&gt;
&lt;li&gt;The browsers sends responses back to the driver, which sends them back to the client.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;PYTHON VIRTUAL ENVIRONMENT&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Dependency isolotion:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Prevents version conflicts between packages.&lt;/li&gt;
&lt;li&gt;Each project can have its own set of dependencies.&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Project portability:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Makes it easier to share projects (using requirments.txt) without worrying about system wide pacjages.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;3.Cleaner global environmrnt:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;keeps the global python installation untouched and clean&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;4.Reproducibillity:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Help in reproducing exact environment for development, testing and deployment.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;EXAMPLE:&lt;/p&gt;

&lt;p&gt;1.Without virtual environment&lt;/p&gt;

&lt;p&gt;You install Flask==2.0.0 for project A.later,project B need Flask==1.1.2. installing both globally causes conflicts.&lt;/p&gt;

&lt;p&gt;2.With virtual environment:&lt;/p&gt;

&lt;h1&gt;
  
  
  Project A
&lt;/h1&gt;

&lt;p&gt;python -m venv venvA&lt;br&gt;
source venvA/bin/activate&lt;br&gt;
pip install Flask==2.0.0&lt;/p&gt;

&lt;h1&gt;
  
  
  Project B
&lt;/h1&gt;

&lt;p&gt;python -m venv venvB&lt;br&gt;
source venvB/bin/activate&lt;br&gt;
pip install Flask==1.1.2&lt;/p&gt;

&lt;p&gt;Each project run independently without conflict.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Test Plan for Sauce demo Website</title>
      <dc:creator>DHANUSH</dc:creator>
      <pubDate>Thu, 08 May 2025 11:05:13 +0000</pubDate>
      <link>https://dev.to/dhanusappa/test-plan-for-sauce-demo-website-dhn</link>
      <guid>https://dev.to/dhanusappa/test-plan-for-sauce-demo-website-dhn</guid>
      <description>&lt;ol&gt;
&lt;li&gt;Test Plan Identifier
Test Plan Version: V1.0
Project Name : sauce Demo testing plan&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;2.Introduction&lt;br&gt;
  Sauce Demo is a e-commerce application thet allows users to browse product add them to a shopping cart and complete purchases the purpose of this test plan is to valadate the application functionality,usability and compatibility with various browsers.&lt;/p&gt;

&lt;p&gt;3.Test objectives:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;verify that feature and workflows as expected.&lt;br&gt;
Ensure the application is user friendly with ease of use&lt;br&gt;
confirm compatibility across browsers and devices.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ol&gt;
&lt;li&gt;Scope
&amp;gt; Core feature like login, product browsing cart management, filter option , checkout and payment.
&amp;gt; Web application functionality on desktop, laptop and browsers.
&amp;gt; Backend integration such as payment get way and databases. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Functional Testing&lt;br&gt;
Product pages (add to cart, view details)&lt;br&gt;
Shopping cart functionality&lt;br&gt;
Checkout flow&lt;br&gt;
Contact forms&lt;br&gt;
Social media feed integrations (Instagram, TikTok)&lt;br&gt;
Filter/search functionality.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Usability Testing
Ease of navigation
Clarity of product information
Checkout process simplicity
Mobile responsiveness&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Accessibility:&lt;br&gt;
Even if the app is technically functional, if users find it difficult to use, they will leave. Good usability improves conversion rates, customer satisfaction, and retention.&lt;/p&gt;

&lt;p&gt;Page load times&lt;br&gt;
Response times under high traffic&lt;br&gt;
Load handling during peak hours (e.g., flash sales)&lt;/p&gt;

&lt;p&gt;Users expect fast performance. Slow sites result in high bounce rates and lost revenue. Shopify stores, in particular, benefit from performance tuning to stay competitive.&lt;/p&gt;

&lt;p&gt;Security breaches damage trust and can lead to legal and financial consequences, especially when handling sensitive customer data.&lt;/p&gt;

&lt;p&gt;Why it's important:&lt;br&gt;
Users access stores from various platforms. Incompatibilities can lead to broken layouts or features, losing potential sales.&lt;/p&gt;

&lt;p&gt;Accessibility Testing:&lt;br&gt;
Screen reader compatibility&lt;br&gt;
Keyboard navigation&lt;br&gt;
Color contrast&lt;br&gt;
ARIA labels&lt;/p&gt;

&lt;p&gt;PART 2&lt;br&gt;
TEST SCENARIOS AMD CASES&lt;/p&gt;

&lt;p&gt;1.Browse and View Products:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Users can scroll through collections, click on products, view images, descriptions, and prices.&lt;br&gt;
Importance: Core to any eCommerce site — allows users to explore what's for sale.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;2.Add Products to Cart:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Users can select product options (like size/color) and add items to the shopping cart.&lt;br&gt;
Importance: Critical for enabling purchases; tests user decision flow and cart functionality.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;3.Complete Checkout Process:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Users can proceed to checkout, enter shipping/payment details, and place an order.&lt;br&gt;
Importance: This is where conversion happens. A smooth and secure checkout is essential.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;4.Interact with Social Content (Shoppable Instagram Feed)&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Users can engage with embedded Instagram or TikTok feeds and shop directly from social media images.&lt;br&gt;
Importance: Enhances engagement, drives sales from social proof, and showcases real-world use.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;5.Search and Filter Products&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Users can use the search bar or filter by tags (e.g., color, category) to find specific products.&lt;br&gt;
Importance: Helps users quickly find what they’re looking for, improving UX and conversion.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Functional Testing&lt;br&gt;
Product pages (add to cart, view details)&lt;br&gt;
Shopping cart functionality&lt;br&gt;
Checkout flow&lt;br&gt;
Contact forms&lt;br&gt;
Social media feed integrations (Instagram, TikTok)&lt;br&gt;
Filter/search functionality&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Usability Testing&lt;br&gt;
Ease of navigation&lt;br&gt;
Clarity of product information&lt;br&gt;
Checkout process simplicity&lt;br&gt;
Mobile responsiveness&lt;br&gt;
Accessibility (e.g., for visually impaired users)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Performance Testing&lt;br&gt;
Page load times&lt;br&gt;
Response times under high traffic&lt;br&gt;
Load handling during peak hours (e.g., flash sales)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Security Testing&lt;br&gt;
Secure checkout process (HTTPS, PCI compliance)&lt;br&gt;
Protection against injection attacks&lt;br&gt;
Access control (e.g., admin vs. guest permissions)&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Why it's important:&lt;br&gt;
Security breaches damage trust and can lead to legal and financial consequences, especially when handling sensitive customer data.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Compatibility Testing&lt;br&gt;
Chrome, Firefox, Safari, Edge&lt;br&gt;
iOS, Android devices&lt;br&gt;
Desktop, tablet, mobile view&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Integration Testing&lt;br&gt;
Shopify platform integrations&lt;br&gt;
Sauce app integration&lt;br&gt;
Payment gateways&lt;br&gt;
Social media feeds&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Regression Testing&lt;br&gt;
After bug fixes&lt;br&gt;
When updating themes or apps&lt;br&gt;
Adding new features (like a new social feed)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Accessibility Testing&lt;br&gt;
Screen reader compatibility&lt;br&gt;
Keyboard navigation&lt;br&gt;
Color contrast&lt;br&gt;
ARIA labels&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Browse and View Products&lt;br&gt;
Users can scroll through collections, click on products, view images, descriptions, and prices.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Importance: Core to any eCommerce site — allows users to explore what's for sale.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Add Products to Cart
Users can select product options (like size/color) and add items to the shopping cart.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Importance: Critical for enabling purchases; tests user decision flow and cart functionality.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Complete Checkout Process
Users can proceed to checkout, enter shipping/payment details, and place an order.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Importance: This is where conversion happens. A smooth and secure checkout is essential.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Interact with Social Content (Shoppable Instagram Feed)
Users can engage with embedded Instagram or TikTok feeds and shop directly from social media images.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Importance: Enhances engagement, drives sales from social proof, and showcases real-world use.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Search and Filter Products
Users can use the search bar or filter by tags (e.g., color, category) to find specific products.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Importance: Helps users quickly find what they’re looking for, improving UX and conversion.&lt;/p&gt;

&lt;p&gt;2.GOAL&lt;/p&gt;

&lt;p&gt;Ensure users can easily find and view product listings and details.&lt;br&gt;
Verify that products can be added to the cart with correct variants.&lt;br&gt;
Confirm that the checkout process is functional and secure from start to finish.&lt;br&gt;
Ensure that social content is interactive and leads users to relevant product pages.&lt;br&gt;
Verify that the search and filter functionality return accurate and relevant products.&lt;/p&gt;

&lt;p&gt;Positive and negative:&lt;/p&gt;

&lt;p&gt;Positive Test Scenario:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;User navigates to the homepage and clicks on a product thumbnail.&lt;br&gt;
User selects a valid size and color, then clicks "Add to Cart"&lt;br&gt;
User fills out all required fields with valid data and clicks "Place Order".&lt;br&gt;
User clicks a shoppable Instagram image and is redirected to the correct product.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Negative&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;User clicks a broken product link or tries to access a non-existent product URL.&lt;br&gt;
User clicks "Add to Cart" without selecting a required variant (e.g., size).&lt;br&gt;
User enters invalid credit card information (e.g., expired or incorrect number).&lt;br&gt;
Image link is broken or points to a removed product.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Difference scenario and test case:&lt;/p&gt;

&lt;p&gt;Feature:&lt;br&gt;
Scope&lt;br&gt;
Detail&lt;br&gt;
Use&lt;br&gt;
Audience&lt;/p&gt;

&lt;p&gt;Test Scenario:&lt;br&gt;
High-level idea&lt;br&gt;
Brief, goal-oriented&lt;br&gt;
Coverage planning&lt;br&gt;
Stakeholders, QA leads&lt;/p&gt;

&lt;p&gt;Test Case&lt;br&gt;
Detailed steps and checks&lt;br&gt;
Thorough, includes data and expected results&lt;br&gt;
Execution and validation&lt;br&gt;
Testers, automation engineers&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;TEST SCRIPTS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Positive Test Case&lt;br&gt;
Test Case ID: TC_001_POS&lt;br&gt;
Scenario: User views a product from the homepage.&lt;br&gt;
Preconditions: User is on the homepage.&lt;br&gt;
Steps:&lt;br&gt;
Click on a product thumbnail.&lt;br&gt;
Expected Result: Product detail page opens, showing image, price, and description.&lt;/p&gt;

&lt;p&gt;Negative Test Case&lt;br&gt;
Test Case ID: TC_001_NEG&lt;br&gt;
User tries to open a non-existent product.&lt;br&gt;
Preconditions: User has a broken product URL.&lt;br&gt;
Enter an invalid product URL (e.g., /products/invalid-item).&lt;br&gt;
Expected Result: User is shown a "Product not found" or 404 error page.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;TEST SCRIPT&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Test Script Structure&lt;br&gt;
Setup&lt;br&gt;
Launch browser&lt;br&gt;
Navigate to URL&lt;br&gt;
Test Steps&lt;br&gt;
Interact with UI (fill forms, click buttons)&lt;br&gt;
Validate expected results&lt;br&gt;
Teardown&lt;br&gt;
Close browser&lt;/p&gt;

</description>
    </item>
    <item>
      <title>SELENIUM</title>
      <dc:creator>DHANUSH</dc:creator>
      <pubDate>Thu, 10 Apr 2025 18:32:28 +0000</pubDate>
      <link>https://dev.to/dhanusappa/selenium-166i</link>
      <guid>https://dev.to/dhanusappa/selenium-166i</guid>
      <description>&lt;h2&gt;
  
  
  WHAT IS SELENIUM:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;An open source automation testing frame work used primarily for testing web application.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Lets developers write tests in languages like java, python, java script.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Can simulate user action like clicking buttons, filling out forms, and navigating pages across different browsers ( chrome, firefox,etc).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Often used in CI/CD pipelines for automated testing.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  USE SELENIUM FOR AUTOMATION
&lt;/h2&gt;

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

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;CROSS BROWSER TESTING&lt;/p&gt;

&lt;p&gt;Selenium supports all major browsers: chrome, firefox, edge, safari,etc..&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;MULTI LANGUAGE SUPPORT&lt;/p&gt;

&lt;p&gt;You can write selenium scripts in several languages like python, java, c## ......&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Open source:&lt;/p&gt;

&lt;p&gt;it's free to use with a strong community and lots of plugins/extensions.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h4&gt;
  
  
  RELEVANCEOF SELENIUM IN AUTOMATION TESTING USING PYTHON:
&lt;/h4&gt;

&lt;p&gt;SELENIUM IS HIGHLY RELEVANT IN AUTOMATION TESTING WITH PYTHON DUE TO SEVERAL KEY REASONS.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;BROWSER AUTOMATION:&lt;/strong&gt; &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Selenium allows you to control real web browsers 9like chrome, firefox, edge) programmatically. this is essential for testing how web apps behave in a real environment.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;END-TOEND TESTING:&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;With selenium you can simulate user interaction like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Clicking buttons&lt;/li&gt;
&lt;li&gt;Filling form&lt;/li&gt;
&lt;li&gt;navigating pages&lt;/li&gt;
&lt;li&gt;Uploading files this makes it ideal for end-to-end(E2E) and functional testing of web application.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;3.** PYTHON INTEGRATON**&lt;/p&gt;

&lt;p&gt;Python is a clean readable and powerful language. Selenium's Python bindings make it easy to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Write concise and readable test scripts&lt;/li&gt;
&lt;li&gt;Integrate with testing framework like Pytest or unittest&lt;/li&gt;
&lt;li&gt;Generate test report or logs&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;CROSS-BROWSER TESTING&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;You can run the same test across different browsers to ensure compatibility.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>COMMON MANUAL TESTING TECHNIQUES</title>
      <dc:creator>DHANUSH</dc:creator>
      <pubDate>Mon, 02 Dec 2024 07:30:14 +0000</pubDate>
      <link>https://dev.to/dhanusappa/common-manual-testing-techniques-ph4</link>
      <guid>https://dev.to/dhanusappa/common-manual-testing-techniques-ph4</guid>
      <description>&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Exploratory Testing&lt;br&gt;
Testing Without predefined test cases.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ad hoc Testing&lt;br&gt;
Unstructured and informal testing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Black box testing&lt;br&gt;
Testing without knowledge of the internal code or structure.&lt;br&gt;
Focuses on input output and user experience.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;4.white box testing&lt;br&gt;
   testing with knowledge of the internal code structure.&lt;/p&gt;

&lt;p&gt;5.Funtional testing&lt;br&gt;
   Verifies the application function as expected based  requirement.&lt;br&gt;
   User interaction&lt;br&gt;
   Business rules  &lt;/p&gt;

&lt;p&gt;BOUNDARY VALUE ANALYSIS&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Include the minimum and maximum values of the input range.&lt;/li&gt;
&lt;li&gt;also consider values just below and just above these limits&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;TESTCASE DESING&lt;/p&gt;

&lt;p&gt;THE LOWER BOUNDARY&lt;br&gt;
ONE VALUE JUST BELOW&lt;br&gt;
THE UPPER BOUNDARY&lt;/p&gt;

&lt;p&gt;DECISION TABLE TESTING&lt;/p&gt;

&lt;p&gt;STRUCTURE:&lt;/p&gt;

&lt;p&gt;Conditions: input factors or scenarios that influence the systems behavior.&lt;/p&gt;

&lt;p&gt;PURPOSE:&lt;/p&gt;

&lt;p&gt;To ensure that all possible combinations of conditions are tested.&lt;/p&gt;

&lt;p&gt;ADVANTAGES OF DECISION TABLE TESTING:&lt;/p&gt;

&lt;p&gt;Systematically handles complex combination of conditions.&lt;br&gt;
 Ensures full coverage of rules and decision paths.&lt;/p&gt;

&lt;p&gt;THE FEATURES OF MANUAL TESTING IN  THE AGE OF AI:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Human centric Evaluation&lt;/li&gt;
&lt;li&gt;Critical Think And Adaptability&lt;/li&gt;
&lt;li&gt;Testing AI And machine Learning Systems&lt;/li&gt;
&lt;li&gt;Validation Of Automation Results&lt;/li&gt;
&lt;li&gt;Testing Complex Scenarios&lt;/li&gt;
&lt;li&gt;Collaboration With AI&lt;/li&gt;
&lt;li&gt;Ethical Regulatory Testing&lt;/li&gt;
&lt;li&gt;Focus On Non Functional Testing&lt;/li&gt;
&lt;li&gt;maintaining Test Coverage In Dynamic Systems&lt;/li&gt;
&lt;li&gt;Building Trust In AI&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Python selenium architecture</title>
      <dc:creator>DHANUSH</dc:creator>
      <pubDate>Tue, 13 Aug 2024 18:02:58 +0000</pubDate>
      <link>https://dev.to/dhanusappa/python-selenium-architecture-1jla</link>
      <guid>https://dev.to/dhanusappa/python-selenium-architecture-1jla</guid>
      <description>&lt;p&gt;Selenium is a powerful tool for automating web browesrs and its architecture is designed to allow scripts to interact with web page just as a human would. Here a detailed breakdown of the selenium architecture.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Selenium components:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;selenium web drive: this is core component of selenium.it provodes a programming interface to interact with web browsers. Web driver interacts with the browser directly without any middle layer.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;selenium server: used for remote execution of web driver scripts.it acts as a middleware between the test code and the browser&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;selenium grid: used to distribute the execution of the cases across different environments machines.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Selenium Web Drive architecture:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;selenium web driver follows a client server architecture. Here's how it structured:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Clint (Test script/code):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The clint can any of the supportes programming languages (python, java, c#,etc). &lt;/li&gt;
&lt;li&gt;The script contains commands that are translstes into HTTP requests.

&lt;ul&gt;
&lt;li&gt;JSON Wire protocol:&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;WebDriver uses the JSON Wirw protocal to communication between the client libraries and server.&lt;/li&gt;

&lt;li&gt;these requests contain actions like find elemenr, click, get, etc.

&lt;ul&gt;
&lt;li&gt;Browser specific driver&lt;/li&gt;
&lt;li&gt;Each browser has a specific driver like chromedriver for chrome geckodriver for firefox, etc.&lt;/li&gt;
&lt;li&gt;the webdrive sends the HTTP requests to the browser driver.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;/li&gt;

&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Selenium grid architecture&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;1.Hub&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;The cental point of the selenium grid.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;receives test requests form the client.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;2.Nodes&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Nodes are actual machines where the tests are executed.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;the hub forwards the test commands to the nodw which then executes the test on its local browser instance.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Execution flow in selenium:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;test script initialization:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Thu user writes test scripts in a language like python useing selenium libraries

&lt;ul&gt;
&lt;li&gt;Command Execution:&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;the script generates WebDriver commands.&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;command are send as HTTP requests to the browse  driver via JSON Wier protacol.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Browser interaction:

&lt;ul&gt;
&lt;li&gt;THe browser drive receives the commands and translates them to the native browser language&lt;/li&gt;
&lt;li&gt;The browser executes these commands.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;Resulting Reporting:

&lt;ul&gt;
&lt;li&gt;the browser driver collectes the results and sends them back as HTTP responses.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;/li&gt;

&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Advance features:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Page object model (POM): A desing pattern to creat object repositories for web UI elements.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Action Chains: Used for complex user interaction like drag and drop and right-click,etc.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Python selenium bindings:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Selenium, web driver:  This model provide the methods and classes required to interact with browser.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;*Find-element-by id(),,click(),send-key():&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;* Mothed to interact with web elements.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;QUESTION NUM 2&lt;/p&gt;

&lt;p&gt;The significance of the python virtual in environment:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The Python virtual environment is a critical tool for managing dependencies and configurations in Python projects. Here's why it's significant, along with some practical examples.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Significance of Python Virtual Environments:&lt;/p&gt;

&lt;p&gt;Isolation of Dependencies:&lt;/p&gt;

&lt;p&gt;What It Does: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A virtual environment allows you to create an isolated space for a Python project where you can install specific versions of libraries and packages without affecting the global Python installation.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ul&gt;
&lt;li&gt;Suppose you’re working on two projects, Project A and Project B. Project A requires requests version 2.20, while Project B needs version 2.26. By using virtual environments, you can create separate environments for each project, ensuring that each uses the correct version of requests without conflicts.
Avoiding Conflicts:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What It Does: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Virtual environments prevent dependency conflicts by keeping project-specific packages separate from the system-wide Python packages.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ul&gt;
&lt;li&gt;If Project C relies on Django 2.2 but another project, Project D, requires Django 3.0, a virtual environment for each project ensures that they don’t interfere with each other’s Django versions.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Reproducibility:&lt;/p&gt;

&lt;p&gt;What It Does:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Using virtual environments helps ensure that your project’s dependencies are consistent across different development setups. You can specify exact versions of packages in a requirements.txt file.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ul&gt;
&lt;li&gt;If you need to collaborate with a team or deploy your project to production, you can use pip freeze &amp;gt; requirements.txt to capture the exact versions of the libraries in your virtual environment. This file can then be used to recreate the environment elsewhere using pip install -r requirements.txt.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Ease of Management:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What It Does: Virtual environments simplify managing dependencies for multiple projects. You can activate and deactivate environments as needed, keeping your workspace organized.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ul&gt;
&lt;li&gt;You might be working on a data science project that requires specific versions of data processing libraries. By creating a virtual environment, you can quickly switch between this project and another one that uses different libraries without manual adjustments.&lt;/li&gt;
&lt;/ul&gt;

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