<?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: Bala Venkatesh</title>
    <description>The latest articles on DEV Community by Bala Venkatesh (@balavenkatesh).</description>
    <link>https://dev.to/balavenkatesh</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%2F1230000%2Ff2e91cba-d5f8-403a-8cbd-6f056683ac24.jpg</url>
      <title>DEV Community: Bala Venkatesh</title>
      <link>https://dev.to/balavenkatesh</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/balavenkatesh"/>
    <language>en</language>
    <item>
      <title>Python Virtual Environment</title>
      <dc:creator>Bala Venkatesh</dc:creator>
      <pubDate>Tue, 26 Mar 2024 17:16:19 +0000</pubDate>
      <link>https://dev.to/balavenkatesh/python-virtual-environment-3h50</link>
      <guid>https://dev.to/balavenkatesh/python-virtual-environment-3h50</guid>
      <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;br&gt;
In project management, managing dependencies for different project and environment is a difficult task.&lt;/p&gt;

&lt;p&gt;Python virtual environment simplifies dependency management and project isolation.&lt;/p&gt;

&lt;p&gt;Here, we try to cover about python virtual environment, its advantages and setup.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Python virtual environment?&lt;/strong&gt;&lt;br&gt;
It is a self container directory with set of libraries and dependencies specific to project.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Futwlm514vlpv18x9144j.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Futwlm514vlpv18x9144j.gif" alt="Container" width="1200" height="675"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It helps to isolate project dependencies from different set of projects in environment which avoids confusion and also enhances efficiency.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key Advantages&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Dependency Isolation: Ensures each project has isolated set of libraries&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;-Easy Management: User can load each project with only required set of dependencies which simplifies installation and project setup process.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuk4dpgswgtru04brh54v.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuk4dpgswgtru04brh54v.gif" alt="Laodingggg" width="688" height="410"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Reproducible: It ensures exact dependencies are used wherever project setup is done.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Portable: can be easily shared across different system.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Setup and Commands&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Creation: Use &lt;code&gt;pip install virtualenv&lt;/code&gt; command in terminal &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdu60cotrxlw2d5rd0zj7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdu60cotrxlw2d5rd0zj7.png" alt="venv" width="746" height="116"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; Activation: Use commands &lt;code&gt;virtualenv &amp;lt;directory&amp;gt;&lt;/code&gt; and &lt;code&gt;Scripts\Activate&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz3u95wf6t4czl2rzterp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz3u95wf6t4czl2rzterp.png" alt="Creation" width="800" height="90"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Installation: install required packages using &lt;code&gt;pip&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzk67z60o39qetbdqc57w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzk67z60o39qetbdqc57w.png" alt="packages" width="282" height="339"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Deactivation: Use command Scripts\deactivate to deactivate venv&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
It is an useful concept in terms of managing dependencies, different environment and projects.&lt;/p&gt;

&lt;p&gt;By isolation of dependencies, maintaining projects becomes easier particularly to developers who work in multiple projects and also testers who develops and execute different type of test suite which requires different packages based on environment and test phase.&lt;/p&gt;

</description>
      <category>python</category>
      <category>virtualenvironment</category>
      <category>container</category>
      <category>handlingdependencies</category>
    </item>
    <item>
      <title>Python Selenium Architecture for WebAutomation</title>
      <dc:creator>Bala Venkatesh</dc:creator>
      <pubDate>Tue, 26 Mar 2024 14:55:53 +0000</pubDate>
      <link>https://dev.to/balavenkatesh/python-selenium-architecture-for-webautomation-57i0</link>
      <guid>https://dev.to/balavenkatesh/python-selenium-architecture-for-webautomation-57i0</guid>
      <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In current situation where web applications and web pages are getting advanced and complex, we are in need of efficient web automation solutions.&lt;/p&gt;

&lt;p&gt;With several web automation architecture available today, python selenium architecture is one among them which provides simplicity and also adoption to changes.&lt;/p&gt;

&lt;p&gt;Here, in this post we try to provide simpler explanation of how python selenium architecture works.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Python Selenium Architecture&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It uses combination of python and selenium in a effective way that provides greater facility to automate web browser interactions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw9rqtxrr9biq6pz8gsey.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fw9rqtxrr9biq6pz8gsey.png" alt="Flow Chart" width="311" height="621"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Python Language&lt;/strong&gt;&lt;br&gt;
Python known for its simplicity and readability, is used as scripting language which interacts and uses selenium webdriver.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Selenium Webdriver API&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Selenium webdriver API is core of this architecture, which acts as bridge between script and browser, it helps to control actions in browser.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Browser Driver&lt;/strong&gt;&lt;br&gt;
To communicate with browsers, selenium depends on browser specific drivers such as chromedriver and geckodriver.&lt;/p&gt;

&lt;p&gt;These drivers establish connection between webdriver and respective browser.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Web Browser&lt;/strong&gt;&lt;br&gt;
Target application of this automation is web browsers such as chrome, firefox or edge.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Web Elements&lt;/strong&gt;&lt;br&gt;
Webpages consists of elements such as button, input fields, links.&lt;br&gt;
Selenium python architecture provides methods to locate and interact with those elements.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Test Actions&lt;/strong&gt;&lt;br&gt;
We perform range of actions like click, type, navigations in webpage using webdriver API.&lt;/p&gt;

&lt;p&gt;These actions simulate real time user interactions with web page.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Result Verification&lt;/strong&gt;&lt;br&gt;
After performing actions , selenium validates expected outcome against actual results, which ensures functionality and correctness of web application.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
In testing, selenium python architecture helps us to test workflows , improve coverage and ensures quality of web application.&lt;/p&gt;

&lt;p&gt;It also stands tall in terms of providing powerful and flexible framework.&lt;/p&gt;

</description>
      <category>webautomation</category>
      <category>python</category>
      <category>selenium</category>
      <category>softwaretesting</category>
    </item>
    <item>
      <title>Selenium:Tool for Web Automation</title>
      <dc:creator>Bala Venkatesh</dc:creator>
      <pubDate>Mon, 18 Mar 2024 17:44:19 +0000</pubDate>
      <link>https://dev.to/balavenkatesh/seleniumtool-for-web-automation-2k8h</link>
      <guid>https://dev.to/balavenkatesh/seleniumtool-for-web-automation-2k8h</guid>
      <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When it comes to topic of automation , particularly web based automation / testing, selenium is most heard word.&lt;/p&gt;

&lt;p&gt;Here, In this post we try to provide simpler explanation of what selenium is, why it is used for web automation and how it interacts with browsers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Selenium?&lt;/strong&gt;&lt;br&gt;
Selenium is open-source automation tool mainly used for automating web applications.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F88py1cb9il4ykv4pt2in.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F88py1cb9il4ykv4pt2in.gif" alt="OPEN_SOURCE" width="800" height="458"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Selenium provides tools/libraries which helps testers to automate browser interactions, user actions and validation of web element.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Some Popular Selenium Libraries:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Webdriver --&amp;gt; acts as interface between script and browser&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Grid --&amp;gt; for parallel execution&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Actions API --&amp;gt; Methods for mouse movements, keyboard actions, drag and drop&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Wait API --&amp;gt; offers wait&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Why we use Selenium for Automation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Listing down key features of selenium which explains selenium is a go to tool for automation,&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cross Browser Testing: we can test across different browsers.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyt61f9whhtpvabk6nhc0.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fyt61f9whhtpvabk6nhc0.gif" alt="cross-browser" width="534" height="300"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Platform Independence: Supports different OS&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fidzg2h6lpar6h29klf2j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fidzg2h6lpar6h29klf2j.png" alt="OS" width="277" height="182"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Language: As selenium accepts programming languages such as Java, Python, JS, Ruby and C# so , based on our need we can use required programming language.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8nd19frjq8wjwv6xwvhc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8nd19frjq8wjwv6xwvhc.png" alt="Language" width="800" height="518"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Easy Integration: It is easy integrate with frameworks such as TestNG and JUnit which helps in organizing and reporting.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx274ta0bttv0xdy2m528.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx274ta0bttv0xdy2m528.jpeg" alt="Frameworks" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Parallel Execution: Using selenium grid we can perform parallel execution across different browsers in different OS, which is time and cost effective in terms of testing.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;How Selenium works with browser?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnkjt0ifjnlnk71r7o69h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnkjt0ifjnlnk71r7o69h.png" alt="FlowChart" width="136" height="341"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;We create script / program using webdriver commands which gets executed when required.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;When executed it reaches required browser drivers which starts translating to browser readable.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Actions will be performed on browser as mentioned in webdriver commands.&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Note: Current version of Selenium is Selenium 4
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
Selenium is an essential tool for any automation testing project based on web and it has an added advantage to perform testing across different browsers and platforms, greater compatibility with frameworks.&lt;br&gt;
With all these features in open-source is highly valuable.&lt;/p&gt;

</description>
      <category>selenium</category>
      <category>automation</category>
      <category>webtesting</category>
      <category>automationtool</category>
    </item>
    <item>
      <title>Manual Testing_Task4</title>
      <dc:creator>Bala Venkatesh</dc:creator>
      <pubDate>Sun, 24 Dec 2023 04:18:30 +0000</pubDate>
      <link>https://dev.to/balavenkatesh/manual-testingtask4-g22</link>
      <guid>https://dev.to/balavenkatesh/manual-testingtask4-g22</guid>
      <description>&lt;p&gt;&lt;strong&gt;Manual Testing&lt;/strong&gt;&lt;br&gt;
In process of manual testing, tester performs all steps one by one and validates required functionality.&lt;/p&gt;

&lt;p&gt;Manual tester validates whether app works as expected and raises bug if not.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9mXQVbm3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wyd02p8evsdkom5b9sns.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9mXQVbm3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wyd02p8evsdkom5b9sns.png" alt="UX" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To determine overall quality of application , user experience of application is must which is easily covered in terms of manual testing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Benefits&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Attempts to find more bugs and makes application more effective
(Example:based on testing / app knowledge tester can also validate tests other than test scenarios)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Z05nRgcb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7c9e3k4j1275tz0ls062.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Z05nRgcb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7c9e3k4j1275tz0ls062.jpg" alt="BUG" width="450" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;manual tester tests mostly from end users perspective by which application usability can be tested&lt;br&gt;
(User experience is key thing which pulls customer again and again.Example:E-commerce applications)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cost effective&lt;br&gt;
(Example: 1)Automation of certain application requires licensed tools which will affect low budget projects&lt;br&gt;
2)If only small portion of application need to be tested)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--O8uSGVKc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8iu69olvri16ulggat5c.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--O8uSGVKc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8iu69olvri16ulggat5c.jpg" alt="Cost effective" width="479" height="274"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Drawbacks&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Time consuming
(Example:If application have been for a while and it is in release50 and if we want to do regression it is quite impossible to manually test all previously existing test cases)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--H1igk19N--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ecykw8ysktqketw1droy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--H1igk19N--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ecykw8ysktqketw1droy.gif" alt="Timeconsuming" width="220" height="165"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Monotonous
(If tester is testing same application and scenarios over and over for prolonged time amy result in bug due to lack of focus)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--v55sTkrt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g60bmz6f90sceku8b005.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--v55sTkrt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g60bmz6f90sceku8b005.gif" alt="Monotonous" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;More testers needed for huge projects
(Example: If developed application is huge and also has frequent releases which adds more test cases each time demands more manual testers and results in more costs as well, can be easily rectified by applying automation)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--54t9HlV3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hp0f7tkk9ixjaedv79ls.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--54t9HlV3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hp0f7tkk9ixjaedv79ls.gif" alt="morepeople" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>guvi</category>
      <category>softwaretesting</category>
      <category>qa</category>
    </item>
    <item>
      <title>Functional Testing VS Non Functional Testing_Task3</title>
      <dc:creator>Bala Venkatesh</dc:creator>
      <pubDate>Sun, 17 Dec 2023 07:43:21 +0000</pubDate>
      <link>https://dev.to/balavenkatesh/functional-testing-vs-non-functional-testingtask3-ifc</link>
      <guid>https://dev.to/balavenkatesh/functional-testing-vs-non-functional-testingtask3-ifc</guid>
      <description>&lt;p&gt;&lt;strong&gt;Purpose  - Functional Testing&lt;/strong&gt;&lt;br&gt;
To validate software whether it is functioning as expected and meets requirements.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--mhKBG-ls--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6sn9yeu6yltt4d1l8hu7.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--mhKBG-ls--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6sn9yeu6yltt4d1l8hu7.jpg" alt="Validation" width="800" height="363"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Purpose  - Non Functional Testing&lt;/strong&gt;&lt;br&gt;
Focus more on system's non functional aspects such as performance, reliability, compatibility, security.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0HSHfgMX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dzgnbvp4qpvtpggx5g4s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0HSHfgMX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dzgnbvp4qpvtpggx5g4s.png" alt="reliable" width="500" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Types - Functional testing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Unit Testing&lt;/strong&gt; - Checks particular function or module works fine&lt;br&gt;
&lt;strong&gt;Example:&lt;/strong&gt;Testing login functionality functions&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Integration Testing&lt;/strong&gt; - Checks integration between different functions&lt;br&gt;
&lt;strong&gt;Example:&lt;/strong&gt;Testing interaction between shopping page and cart page&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Interface Testing&lt;/strong&gt; - Checks interaction between two different systems.&lt;br&gt;
&lt;strong&gt;Example:&lt;/strong&gt;Testing interaction between amazon and bank payment systems&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Regression Testing&lt;/strong&gt; - Retesting is done to ensure new functional doesn't interrupt existing one's.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example :&lt;/strong&gt; Addition of new UPI payment option doesn't affect existing functions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Types - Non Functional testing&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Document testing&lt;/strong&gt; - Review of documents(BRS,test design,TSR)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Installation testing&lt;/strong&gt; - Focus on installation ,setup, config, uninstallation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Performance testing&lt;/strong&gt; - checks speed, responsiveness, scalability and ensures data traffic by load ,stress and scalability testing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reliability testing&lt;/strong&gt; - checks system performs consistently and accurately(resolves crash and unexpected behaviour)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Security testing&lt;/strong&gt; - identifies vulnerabilities and assess Software ability to  protect confidentiality.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Benchmark - Functional Testing&lt;/strong&gt;&lt;br&gt;
Success is based on status/result of functionality.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VooT9Mcq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9fj3x3k5xqskrxzpyfgf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VooT9Mcq--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9fj3x3k5xqskrxzpyfgf.png" alt="Test status" width="600" height="437"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Benchmark - Non Functional Testing&lt;/strong&gt;&lt;br&gt;
Success is based on application's response, speed, usability.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--k6nzDsEE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qa03rwcivw5q4ax01uhi.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--k6nzDsEE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qa03rwcivw5q4ax01uhi.jpg" alt="performance" width="284" height="177"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>guvi</category>
      <category>task</category>
      <category>softwaretesting</category>
    </item>
    <item>
      <title>Testing techniques_Task2(PAT)</title>
      <dc:creator>Bala Venkatesh</dc:creator>
      <pubDate>Sat, 16 Dec 2023 18:04:39 +0000</pubDate>
      <link>https://dev.to/balavenkatesh/testing-techniquestask2pat-231i</link>
      <guid>https://dev.to/balavenkatesh/testing-techniquestask2pat-231i</guid>
      <description>&lt;p&gt;&lt;strong&gt;1)Boundary value analysis&lt;/strong&gt;&lt;br&gt;
As name suggests this technique is based on testing boundary values of test data, which includes minimum value,minimum value+1,maximum value,maximum value -1 as valid inputs and minimum value-1,Maximum Value +1 as invalid inputs.&lt;/p&gt;

&lt;p&gt;BVA falls under black box testing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
Eligibility age for attending particular exam is from 18 - 30, boundary values will be as follows.&lt;br&gt;
&lt;strong&gt;Valid Values:&lt;/strong&gt;&lt;br&gt;
Minimum value - 18&lt;br&gt;
Maximum value - 30&lt;br&gt;
Minimum+1 - 19&lt;br&gt;
Maximum-1 - 29&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Invalid Values:&lt;/strong&gt;&lt;br&gt;
Minimum value-1 - 17&lt;br&gt;
Maximum value+1 - 31&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--DMAlnLtH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/exta77yr995y0typqddp.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--DMAlnLtH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/exta77yr995y0typqddp.PNG" alt="BVA" width="774" height="442"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Main logic behind this technique is, if it works for boundary values it will definitely work for values between boundaries as well.&lt;/p&gt;

&lt;p&gt;BVA is mainly applicable in places where function uses input values in any form.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2)Decision Table Testing:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;It provides tabular view of input and also expected outcome of that.&lt;/p&gt;

&lt;p&gt;Mainly to check how required function performs for different combination of inputs.&lt;/p&gt;

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

&lt;p&gt;For appearing to particular security exam, there are certain conditions needs to satisified.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vF9yF0hf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m4keunv2ja5fvy099w6q.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vF9yF0hf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m4keunv2ja5fvy099w6q.PNG" alt="DT" width="800" height="457"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;above provided decision table clear depicts what all inputs are considered to be eligible for exam or not which also provided required combination in clear way and also ensuring test coverage.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3)Use case testing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Use case testing is based on user's perspective rather than system perspective, which ensures required user actions can be performed successfully and application is working as expected.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example&lt;/strong&gt;&lt;br&gt;
Online payment&lt;br&gt;
&lt;strong&gt;Action:&lt;/strong&gt;User selects Online banking option as payment&lt;br&gt;
&lt;strong&gt;System:&lt;/strong&gt;Interacts with payment gateway and connects&lt;br&gt;
&lt;strong&gt;Action:&lt;/strong&gt;User completes payment&lt;br&gt;
&lt;strong&gt;System:&lt;/strong&gt;Responds with successful order details&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4)Linear code sequence and jump&lt;/strong&gt;&lt;br&gt;
It is white box testing technique as testing is done on code level, where testing starts from one branch of code and jumps to next branch of code and by this all modules are tested and covered one by one .&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If developer completed login page module for application, he will test each branch or component involved in login like signup functionality code, login functionality code, forget password code.&lt;/p&gt;

</description>
      <category>guvi</category>
      <category>softwaretesting</category>
      <category>testingtechniques</category>
      <category>beginners</category>
    </item>
    <item>
      <title>ST Introduction_Task 1</title>
      <dc:creator>Bala Venkatesh</dc:creator>
      <pubDate>Sun, 10 Dec 2023 06:39:34 +0000</pubDate>
      <link>https://dev.to/balavenkatesh/st-introductiontask-1-3aia</link>
      <guid>https://dev.to/balavenkatesh/st-introductiontask-1-3aia</guid>
      <description>&lt;p&gt;&lt;strong&gt;1)What is Software testing?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Software testing helps us to ensure that required functions are working as expected based on outcome of testing process.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--unvmxHfj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/36124dydx7jxj2mn0flb.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--unvmxHfj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/36124dydx7jxj2mn0flb.jpg" alt="Desired Outcome" width="535" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2)What we need to know about testing?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We need to know its purpose like why we are following testing process.&lt;/p&gt;

&lt;p&gt;We also need to know how we are going to achieve it by understanding different testing types, models and also stages involved in it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3)What is Relevance of Software testing?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Main purpose or significance are:&lt;br&gt;
To identify defects and ensure that product is not deviating from expected and also validates whether developed product fulfills purpose / requirement.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xrhoFRkD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ymltw18mf5wgse6cv707.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xrhoFRkD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ymltw18mf5wgse6cv707.png" alt="Approved Quality" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

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