<?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: lokesh p</title>
    <description>The latest articles on DEV Community by lokesh p (@lokesh_loki).</description>
    <link>https://dev.to/lokesh_loki</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%2F3799649%2F7fbf88ed-ab7d-43f2-9bcd-0b2f660466a0.jpg</url>
      <title>DEV Community: lokesh p</title>
      <link>https://dev.to/lokesh_loki</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/lokesh_loki"/>
    <language>en</language>
    <item>
      <title>Python Selenium Architecture &amp; Significance of Python Virtual Environment</title>
      <dc:creator>lokesh p</dc:creator>
      <pubDate>Wed, 03 Jun 2026 13:31:44 +0000</pubDate>
      <link>https://dev.to/lokesh_loki/python-selenium-architecture-significance-of-python-virtual-environment-189i</link>
      <guid>https://dev.to/lokesh_loki/python-selenium-architecture-significance-of-python-virtual-environment-189i</guid>
      <description>&lt;p&gt;&lt;strong&gt;1.Python Selenium Architecture&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Python Selenium architecture explains how Selenium works with Python to automate web browsers. It consists of several components that communicate with each other to perform actions on a web application. The main purpose of Selenium architecture is to allow Python scripts to control different web browsers automatically.&lt;/p&gt;

&lt;p&gt;The first component is the test script. Test scripts are written by testers or developers using Python. These scripts contain commands such as opening a browser, clicking buttons, entering text, and validating results. Python is widely used because its syntax simple and easy to understand.&lt;/p&gt;

&lt;p&gt;The second component is the Selenium WebDriver API. When a Python script is executed, the commands are sent to Selenium WebDriver. WebDriver acts as a bridge between the Python code and the web browser. It receives instructions from the test script and converts them into a format that the browser can understand.&lt;/p&gt;

&lt;p&gt;The third component is the Browser Driver. Every browser requires a specific driver. For example, Google Chrome uses ChromeDriver, Mozilla Firefox uses GeckoDriver, and Microsoft Edge uses EdgeDriver. The browser driver receives commands from Selenium WebDriver and communicates directly with the browser.&lt;/p&gt;

&lt;p&gt;The fourth component is the Web Browser. The browser executes the actions requested by the driver. For example, if the script asks Selenium to open a website. If the script asks Selenium to click a button, the browser performs the click action.&lt;/p&gt;

&lt;p&gt;The communication between these components follows a simple flow. First, the Python test script sends commands to Selenium WebDriver. Next WebDriver sends those commands to the browser driver. The browser driver then communicates with the browser and performs the requested action. After the action is completed, the browser sends the result back through the driver to Selenium WebDriver, which then returns the result to the Python script.&lt;/p&gt;

&lt;p&gt;One of the major advantages of Selenium architecture is cross-browser support. The same Python script can be executed on multiple browsers with minimal changes.&lt;/p&gt;

&lt;p&gt;In conclusion, Python Selenium architecture consists of Python test scripts, Selenium WebDriver, browser drivers and web browsers working together. This architecture allows testers to automate web applications efficiently, save time, reduce manual effort, and improve software quality.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. Significance of Python Virtual Environment&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A Python Virtual Environment is an isolated environment that allows developers to install and manage Python packages separately for different projects. It helps avoid conflicts between package versions and keeps project organized. A virtual environment acts like a private workspace where each project can have its own dependencies without affecting other projects on the same computer.&lt;/p&gt;

&lt;p&gt;The main significance of a virtual environment is dependency management. Different projects may require different versions of the same package. For example, project A may need Selenium version 4.10, while project B may require Selenium version 4.5. Without a virtual environment, installing one version could overwrite the other and create problems. A virtual environment solves this issue by keeping project dependencies separate.&lt;/p&gt;

&lt;p&gt;Another advantage is maintaining a clean system. When packages are installed globally, the system can become cluttered with many libraries that may not be needed. Virtual environments ensure that only the required packages are installed for a specific project. This improves organization and reduces the chance of errors.&lt;/p&gt;

&lt;p&gt;Virtual environments also make project sharing easier. Developers can create a requirements file containing all the necessary packages. Other team members can create a virtual environment and install the same packages, ensuring consistency across different systems.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example1:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A student learning Python may create separate virtual environments for web development, automation testing, and machine learning projects. Each environment contains only the libraries needed for that specific task, making learning and project management easier.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example2:&lt;/strong&gt;&lt;br&gt;
Suppose a developer is working on a Selenium automation project. they create a virtual environment and install Selenium inside it. Another project may use different libraries for data analysis. Since both projects have separate environments, there is no conflict between their dependencies.&lt;/p&gt;

&lt;p&gt;In conclusion, Python Virtual Environment is an important tool that helps manage dependencies, avoid version conflicts, maintain a clean development environment, and improve project organization. It is widely used by Python developers because it makes development more reliable, efficient, and easier to manage, especially when working on multiple projects.&lt;/p&gt;

</description>
      <category>python</category>
      <category>selenium</category>
      <category>architecture</category>
    </item>
    <item>
      <title>Selenium for Automation Testing Using Python</title>
      <dc:creator>lokesh p</dc:creator>
      <pubDate>Wed, 03 Jun 2026 07:31:44 +0000</pubDate>
      <link>https://dev.to/lokesh_loki/selenium-for-automation-testing-using-python-3g7g</link>
      <guid>https://dev.to/lokesh_loki/selenium-for-automation-testing-using-python-3g7g</guid>
      <description>&lt;p&gt;Selenium is popular open-source tool used for automating web browsers. It helps testers and developers perform actions on websites automatically, just like a real user. With Selenium, we can open a browser, visit a website, click buttons, enter text into forms, select options from dropdown menus, and verify whether a web application is working correctly. Selenium supports many programming languages such as Python, Java, C#, JavaScript, and Ruby. It also works with different web browsers like Google Chrome, Mozilla Firefox, Microsoft Edge, and Safari. Because of its flexibility and ease of use, Selenium has become one of the most widely used tools in software testing. We use Selenium for automation because manual testing can be time-consuming and repetitive. When a website has many pages and features, testing everything manually after every update becomes difficult. Selenium helps automate these repetitive tasks, which saves time and reduces human errors. Automated test can be executed multiple times without extra effort and can run much faster than manual testing. Selenium also allows testers to run test cases on different browsers and operating systems, ensuring that the application works properly for all users. Another advantage is that Selenium supports integration with testing frameworks and continuous integration tools, making the software development process more efficient. Python is one of the most preferred programming languages for Selenium automation testing. The combination of Selenium and Python is widely used because Python has a simple and easy-to-understand syntax. Even beginners can learn Python quickly and start writing automation scripts with less effort. Python provides various libraries and frameworks that make test automation easier and more effective. When Selenium is used with Python, testers can create scripts to automate browser actions, validate website functionality, and generate test reports. The code is usually shorter and more readable compared to some other programming languages, which helps in maintaining automation projects. &lt;/p&gt;

&lt;p&gt;The relevance of Selenium in automation testing using Python is very high in today's software industry. Most modern web applications require frequent testing to ensure quality and reliability. Selenium with Python helps organizations improve software quality by running automated test cases quickly and accurately. It supports data-driven testing, regression testing, functional testing, and cross-browser testing. Testers can create reusable test scripts and execute them whenever needed. Selenium also supports integration with frameworks such as PyTest and Unittest, which helps organize and manage test cases effectively. Additionally, Selenium can be integrated with tools like Jenkins for automated test execution in continuous deployment (CI/CD) pipelines.&lt;br&gt;
Another important benefit of Selenium with Python is its strong community support. Thousands of developers and testers around the world use Selenium, which means there are many tutorials, guides, and solutions available online. This makes learning and troubleshooting easier. Since Selenium is open-source, it is free to use, making it a cost-effective solution for companies of all sizes.&lt;/p&gt;

&lt;p&gt;In conclusion, Selenium is a powerful browser automation tool that helps automate web application testing. It reduces manual effort, saves time, improves accuracy and increases testing efficiency. Python enhances Selenium's capabilities by providing a simple and readable programming language for creating automation scripts. Together, Selenium and Python form an effective combination for web automation testing and are widely used by software testers and developers to deliver high-quality web applications.&lt;/p&gt;

</description>
      <category>python</category>
      <category>automation</category>
      <category>selenium</category>
    </item>
    <item>
      <title>Manual Testing: Techniques and the age of AI</title>
      <dc:creator>lokesh p</dc:creator>
      <pubDate>Sun, 01 Mar 2026 10:33:25 +0000</pubDate>
      <link>https://dev.to/lokesh_loki/manual-testing-techniques-and-the-age-of-ai-2o81</link>
      <guid>https://dev.to/lokesh_loki/manual-testing-techniques-and-the-age-of-ai-2o81</guid>
      <description>&lt;p&gt;&lt;strong&gt;(1) Common Manual Testing Techniques.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Manual Testing -&lt;/em&gt;&lt;br&gt;
-&amp;gt;Manual testing is the process where tester or QA analysts execute test cases without any automated tools. It is the foundation of software quality. Here are the most common ways testers approach a product.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;Black Box Testing:&lt;/em&gt;&lt;br&gt;
-&amp;gt;To verify the functionality of an application against the requirement specification is called as Black Box testing. &lt;br&gt;
-&amp;gt;In other words, you can simply tell the testing performed by the testers is called as Black Box testing.&lt;br&gt;
-&amp;gt;Black box testing is also called as functional testing or behavioral testing.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;em&gt;White Box Testing:&lt;/em&gt;&lt;br&gt;
-&amp;gt;Testing each and every line in code is called as White Box testing.&lt;br&gt;
-&amp;gt;Generally, this testing is done by developers.&lt;br&gt;
-&amp;gt;White Box testing is also called as open box testing or unit testing.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;3.&lt;em&gt;Exploratory Testing:&lt;/em&gt;&lt;br&gt;
-&amp;gt;Testing is performed in a manner without following a script, the tester explores the app like user perspective and trying to find bugs/defects.&lt;/p&gt;

&lt;p&gt;4.&lt;em&gt;Regression Testing:&lt;/em&gt;&lt;br&gt;
-&amp;gt;Regression testing is the process of re-running existing tests after a software change to ensure that the change hasn't broken any previously working functionality.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;(2) Boundary Value Analysis(BVA).&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;-&amp;gt;BVA is a technique based on the idea that errors are most likely to occur at the "boundaries" of input values rather than in the middle.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Eg:&lt;/em&gt;&lt;br&gt;
-&amp;gt;Enter the password in allotted field that accepts password between 8 and 16 characters.&lt;br&gt;
-&amp;gt; We test in way like instead of testing 10 or 12 characters we need to test like below&lt;/p&gt;

&lt;p&gt;. Minimum - 1 that is 8-1 = 7(just below) the minimum value(8), so its invalid password due to its just below the minimum.&lt;br&gt;
. In the same way for Maximum + 1 that is 16+1 = 17(just above) the maximum value (16), so its invalid password due to its just above the maximum.  &lt;/p&gt;

&lt;p&gt;-&amp;gt; By focusing on these "edges" testers can find significant bugs with very few test cases.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;(3) Decision Table Testing.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;-&amp;gt;Decision table testing is a black box testing technique that uses a simple structured table to test a system with complex business rules and multiple input combinations.&lt;br&gt;
-&amp;gt;This helps ensure that no possible scenario or logical paths are missed during testing&lt;/p&gt;

&lt;p&gt;Eg:&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%2Fcvwt6l65y7dj68df3cjp.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%2Fcvwt6l65y7dj68df3cjp.png" alt=" " width="656" height="144"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;(4) The Future of Manual Testing in the Age of AI.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;-&amp;gt; I would not say manual testing is disappearing. It is evolving from repetitive clicking to high-level strategic thinking.&lt;br&gt;
-&amp;gt; I would say AI handles the boring stuff. Repetitive tasks like regression testing, data entry and basic bug detection.&lt;br&gt;
-&amp;gt;In meantime, humans testers focus on areas AI can't master, such as user experience (UX), empathy, and complex problem solving.&lt;br&gt;
-&amp;gt;Finally, I am very confidently saying that human testers still do the best in finding unexpected bugs by using intuition and "what-if" scenarios.&lt;br&gt;
-&amp;gt;Usability and feel that is judging if an app is easy, pleasant, or frustrating for a real person to use.&lt;br&gt;
-&amp;gt;I can say manual testers will transition into hybrid roles - using AI as a "Co-tester" to work faster while spending more time on high-risk, creative, and ethical areas.&lt;/p&gt;

</description>
      <category>manualtesting</category>
      <category>manualtestingtechniques</category>
      <category>testing</category>
      <category>ai</category>
    </item>
  </channel>
</rss>
