<?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: yogeswaran</title>
    <description>The latest articles on DEV Community by yogeswaran (@yogeswaran374).</description>
    <link>https://dev.to/yogeswaran374</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%2F1231025%2F7f29a2c3-5f53-434c-b47b-3e5bf9a5653f.png</url>
      <title>DEV Community: yogeswaran</title>
      <link>https://dev.to/yogeswaran374</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/yogeswaran374"/>
    <language>en</language>
    <item>
      <title>Task 18 - python selenium architechture &amp; python virtual environment</title>
      <dc:creator>yogeswaran</dc:creator>
      <pubDate>Sat, 23 Mar 2024 13:50:00 +0000</pubDate>
      <link>https://dev.to/yogeswaran374/task-18-python-selenium-architechture-1b1g</link>
      <guid>https://dev.to/yogeswaran374/task-18-python-selenium-architechture-1b1g</guid>
      <description>&lt;p&gt;&lt;strong&gt;Python Selenium Architechture&lt;/strong&gt;&lt;br&gt;
     Selenium is an automation tool used for web application, and python is a programming language. Selenium scripts can be written using only programming languages, the most commonly used programming languages are Java and Python.&lt;br&gt;
     Python and selenium work together to create automation scripts and code that are used for interactions with web browsers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Workflow and architecture steps&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Creating an instance of web driver&lt;/li&gt;
&lt;li&gt;Choosing the appropriate driver for our web browser&lt;/li&gt;
&lt;li&gt;Writing code using python IDE, for interacting with web browser&lt;/li&gt;
&lt;li&gt;Run the code&lt;/li&gt;
&lt;li&gt;Web browser will now automatically perform the operation written as a code.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This above architecture will allow user to automate web browser using python programming language to perform various testings.&lt;/p&gt;

&lt;h2&gt;
  
  
  Python Virtual Environment
&lt;/h2&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; Python virtual environment is an isolated space where user can work on our python projects separately from our system-installed python.
 Where user can set up our own libraries and dependencies without affecting the system python.
 We can user virtualenv to create python virtual environment.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Virtual Environment&lt;/strong&gt;&lt;br&gt;
     Virtual environment is a tool that helps to keep dependencies required by different projects separate by creating isolated python virtual environments for them. This is the tool used by most python developers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example of using Virtual environment&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; In a scenario where you are working on two web-application projects, one of them uses python 4.18 and other users Python 3.18. In such scenarios, we need to create a virtual environment in python that can be really useful to maintain the dependencies of both projects.
 It is a folder structure for unique projects.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;** create a new Virtual environment using below commands**&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Creating an environment&lt;br&gt;
 pip install virtualenv&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Activating the virtual environment&lt;br&gt;
 virtual env &lt;br&gt;
 scripts\activate&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Install the required package modules using pip command.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Deactivate the virtual environment &lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
    </item>
    <item>
      <title>Task 17-What is selenium and why using selenium for automation</title>
      <dc:creator>yogeswaran</dc:creator>
      <pubDate>Sun, 17 Mar 2024 17:28:34 +0000</pubDate>
      <link>https://dev.to/yogeswaran374/task-17-what-is-selenium-and-why-using-selenium-for-automation-4d4</link>
      <guid>https://dev.to/yogeswaran374/task-17-what-is-selenium-and-why-using-selenium-for-automation-4d4</guid>
      <description>&lt;p&gt;&lt;strong&gt;Selenium:&lt;/strong&gt;&lt;br&gt;
     Selenium is an open-source tool and libraries that is used for browser automation.&lt;br&gt;
     Selenium used to allows user to test their websites functionally on different browsers and perform cross browser testing to check if the website functions consistently across different browsers.&lt;br&gt;
     It enables testers to write automated tests in various programming languages(like Javascript, Python, Ruby, Java, Kotlin &amp;amp; C#) to test the functionality of web applications.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Components of Selenium&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Selenium Webdriver&lt;/li&gt;
&lt;li&gt;Selenium IDE&lt;/li&gt;
&lt;li&gt;Selenium GRID&lt;/li&gt;
&lt;li&gt;Selenium RC&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Selenium Webdriver&lt;/strong&gt;&lt;br&gt;
     It is a web framework that permits you to execute cross-browser test.&lt;br&gt;
     This tool is used for automating web-based application testing to verify that it performs expectedly.&lt;br&gt;
     It allows to choose a programming language to create test scripts.&lt;br&gt;
     It is more powerful and flexible at a higher cose.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;IDE:Integrated Development Element&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; It is primarily a record/run tool that a test case developer uses to develop selenium test cases
 It offers simple installation and it is easy to learn.
 It does not require any programming logic to write its test scripts.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Selenium GRID&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; Selenium grid is a smart proxy server that makes it easy to run tests in parallel across multiple machines and browsers simultaneously.
 It is done by routing commands to remote web browser instances, where one server acts as the hub.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Advantages of Selenium&lt;/strong&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt; Cross browser testing, work on multiple browser like Chrome, Internet explore, Mozilla firefox, microsoft edge, Safari, etc,.
 Platform independent like windows, Linux, Mac.
 Language support like Javascript, Python, Ruby, Java, Kotlin &amp;amp; C#.
 Flexibility
 Jenkins, Git &amp;amp; Appium.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Jenkins&lt;/strong&gt;&lt;br&gt;
     It is like a different cloud machine and remote testing tool.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Git&lt;/strong&gt;&lt;br&gt;
     It acts as same as Jenkins&lt;br&gt;
     It is like CICD(continuous Integration &amp;amp; Continuous Development) pipeline.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Appium&lt;/strong&gt;&lt;br&gt;
     It acts as a server/assistance between selenium script /tablet/android machine.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Disadvantages of Selenium&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;     Limited support for desktop applications&lt;/li&gt;
&lt;li&gt;     Maintenance efforts for test scripts&lt;/li&gt;
&lt;li&gt;     Limited support for mobile testing&lt;/li&gt;
&lt;li&gt;     Dependency on browser updates&lt;/li&gt;
&lt;li&gt;     No support for image-based testing&lt;/li&gt;
&lt;li&gt;     Dependency on browser automation&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Task 4</title>
      <dc:creator>yogeswaran</dc:creator>
      <pubDate>Sat, 23 Dec 2023 18:23:06 +0000</pubDate>
      <link>https://dev.to/yogeswaran374/task-4-2obf</link>
      <guid>https://dev.to/yogeswaran374/task-4-2obf</guid>
      <description>&lt;p&gt;&lt;strong&gt;Manual Testing&lt;/strong&gt;&lt;br&gt;
     Testing is a critical part of development process that involves evaluating software application&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Different types of models of SDLC process&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Waterfall Model&lt;/li&gt;
&lt;li&gt;Prototyping Model&lt;/li&gt;
&lt;li&gt;Incremental or Iterative Model&lt;/li&gt;
&lt;li&gt;Spiral Model&lt;/li&gt;
&lt;li&gt;V Model&lt;/li&gt;
&lt;li&gt;Agile Model&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Waterfall Model&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FEX7UAI4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p82jpt5tmjjni0311o8k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FEX7UAI4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p82jpt5tmjjni0311o8k.png" alt="Image description" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It is the oldest SDLC Model.&lt;/li&gt;
&lt;li&gt;It will be like how water fall flows from up side to down side.&lt;/li&gt;
&lt;li&gt;It will proceed Phase by Phase i.e all the requirements should be ready to proceed to next phases.&lt;/li&gt;
&lt;li&gt;Testing is not involved from the beginning phase, so that the defect fixing becomes time consuming and costly.&lt;/li&gt;
&lt;li&gt;Any changes in the requirements, design or issues to be fixed, we have move back to respective phases and again come down.&lt;/li&gt;
&lt;li&gt;It takes more time to see the working product. So that it is suitable for smaller projects&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;For example&lt;/strong&gt;: A client called RAMU and he wants to built one car washing software. He goes to the IT services company and ask to create one car washing software and give his requirements.&lt;/p&gt;

&lt;p&gt;Now the Business Analyst will create a document i.e requirement team then Design team will work i.e front end development team then the implementation team i.e developers will work then Testing team will test the Ramu's car washing software if the testing is success without any error then go for Deployment then if any Maintenance is required.&lt;/p&gt;

&lt;p&gt;Here client will connect only in the requirement phare and in the deployment phase.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prototyping Model&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WOyEesXF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dlevum8uvz3nrjn9mss8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WOyEesXF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dlevum8uvz3nrjn9mss8.png" alt="Image description" width="800" height="448"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Instead of giving the final product, we first show a dummy prototype to the customers to take their feedback.&lt;/li&gt;
&lt;li&gt;We develop the full and final product after the customer feedback, so that the right product is developed.&lt;/li&gt;
&lt;li&gt;Unlike waterfall model, the risk is low her as the customer knows the product is going to developed in advance.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Incremental or Iterative movel&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--guY7W9BP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3qqqylmsdblgymfwti4c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--guY7W9BP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3qqqylmsdblgymfwti4c.png" alt="Image description" width="800" height="448"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In this model product is designed, implemented and tested incrementally.&lt;/li&gt;
&lt;li&gt;It is created in different iteration, in each iteration new requirements are added untill the product is completed developed.&lt;/li&gt;
&lt;li&gt;Requirements are not freezed and new requirements can be added at any point of time&lt;/li&gt;
&lt;li&gt;Again testing team is not involved in the beginning phases.&lt;/li&gt;
&lt;li&gt; Unlike waterfall model we can see some working product in less time.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;For example&lt;/strong&gt;: In between the car washing software development Ramu want to add some other requirments.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Spiral Model&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0RWSC92T--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pinxkmsxzfil7q23c69v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0RWSC92T--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pinxkmsxzfil7q23c69v.png" alt="Image description" width="800" height="350"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It is the combination of waterfall and iterative model.&lt;/li&gt;
&lt;li&gt;Instead of taking all requirements at one, the one iteration will be conducted with basic requirements and its starts with concept creation.&lt;/li&gt;
&lt;li&gt;Then the next version of product can be achieved in next spiral and so on.&lt;/li&gt;
&lt;li&gt;Spiral model is generally followed by Product based complanies for delivering the product.
&lt;strong&gt;For example&lt;/strong&gt;: Ms office create a software in 1995 then create a another version in 1997 like that created new versions in 2000,2003,2013....&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;V-Model&lt;/strong&gt;&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;It is also known as Verification &amp;amp; Validation Model.&lt;/li&gt;
&lt;li&gt;Testing is incorporated with every phase of life cycle&lt;/li&gt;
&lt;li&gt;Verification phase(requirement analysis, system design, architecture design, module design)&lt;/li&gt;
&lt;li&gt;Validation phase(unit testing, integration testing, acceptance testing)&lt;/li&gt;
&lt;li&gt;It is time saving and every phase is testable&lt;/li&gt;
&lt;li&gt;Risk analysis is not done&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Agile Model&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Agile means Quick&lt;/li&gt;
&lt;li&gt;In these days, everything is changing very dynamically in the market.&lt;/li&gt;
&lt;li&gt;To accommodate such dynamic changes in the requirements, Agile model is came into the picture.&lt;/li&gt;
&lt;li&gt;No importance to Documentation( very less documentation required)&lt;/li&gt;
&lt;li&gt;More importance to communication(more meetings will be conducted)&lt;/li&gt;
&lt;li&gt;Requirements will be small stories and added as backlogs&lt;/li&gt;
&lt;li&gt;Prioritize the stories and adde to one sprint of duration 2 weeks to 4 weeks.&lt;/li&gt;
&lt;li&gt;In this sprint, all product owners, BA Developers, testers and other will communicate and complete their tasks on a story by story basis in quicker way.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;h2&gt;
  
  
  Terminologies of Agile methodology
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Product owner&lt;/strong&gt;: In most companies it is the customer/client&lt;br&gt;
&lt;strong&gt;Epic&lt;/strong&gt;: It is a collection of user stories i.e complete requiremnts is called Epic.&lt;br&gt;
&lt;strong&gt;User story&lt;/strong&gt;: A feature or a module in a software&lt;br&gt;
&lt;strong&gt;Product backlog&lt;/strong&gt;: It is a list of stories which is prepared by product owner.&lt;br&gt;
&lt;strong&gt;&lt;em&gt;example:&lt;/em&gt;&lt;/strong&gt; : Backlog 1: Ramu's car wasing software login page creating, after login options of vehicles buttons creating.&lt;br&gt;
Backlog 2: In the vehicles option what type of wash text is available.&lt;br&gt;
&lt;strong&gt;Sprint&lt;/strong&gt;: Period of time to complete a user story that is to code and test a user story.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;for example&lt;/em&gt;&lt;/strong&gt;: project has 100 user stories, then QA and DEV with commited to give 5 to 8 user stories in one sprint.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sprint Planning meeting&lt;/strong&gt;: It is done within the team to discuss which stories to be delivered in a sprint to complete a userstory within the duration. Team decide what stories to be developed, tested and released in a particular sprint.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sprint backlog&lt;/strong&gt;: commited stories by DEV and QA in specific sprint&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scrum Master&lt;/strong&gt;:Enables close cooperation among the team &lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Scrum meeting/standup meeting *&lt;/em&gt;: To conduct daily call about the sprint like what I did yesterday?, what issues I faced?&lt;br&gt;
What will I do today?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Burnt Down Chart&lt;/strong&gt;: Based on the scrum meeting , the scrum master will create a chart to chek the completed and pending tasks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sprint Retrospective Meeting&lt;/strong&gt;: It is conducted after every sprint gets over. They discuss what went well, what went wrong in this sprint and how to overcome this issues in next sprint. The entire team along with scrum master and product owner will participate.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Task 3</title>
      <dc:creator>yogeswaran</dc:creator>
      <pubDate>Mon, 18 Dec 2023 18:29:37 +0000</pubDate>
      <link>https://dev.to/yogeswaran374/task-3-342h</link>
      <guid>https://dev.to/yogeswaran374/task-3-342h</guid>
      <description>&lt;h2&gt;
  
  
  Different levels of tesing
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Functional Testing&lt;/li&gt;
&lt;li&gt;Non-Functional Tesing&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Functional Testing&lt;/strong&gt;&lt;br&gt;
    -  It is the type of testing where the system is tested all the functional requirements, specifications like technical details data manipulation, processing and other functionalities&lt;br&gt;
    -  It is also known as Black box Testing&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Non-Functional Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  It is used to tesing the non-functional aspects of system like performance, usability, reliability&lt;/li&gt;
&lt;li&gt;  It defines the system operates rather than the specific behavior of the system&lt;/li&gt;
&lt;li&gt;  Non-functional parameters such as speed, scalability, security reliability efficience can be tested.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Difference between Functional and non-functional testing&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Stages of Functional Testing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Unit Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It involves testing the individual components or units of software application&lt;/li&gt;
&lt;li&gt;That is Unit/specific function works correctly and meets the specifinction.&lt;/li&gt;
&lt;li&gt;It is used to test before the code is integrated&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Integration Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; It is the interactions between two or more different components or units or function within the software&lt;/li&gt;
&lt;li&gt; It verifies when two or more works together then the functional result is working as expected within the software application&lt;/li&gt;
&lt;li&gt; When using multiple functions work together it should not introduce new defects&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Interface/system Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It checks the interfaces of two or more systems, then the expected result is working as expected or not&lt;/li&gt;
&lt;li&gt;it is used to validate APIs, Web services etc.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;u&gt;For example&lt;/u&gt; &lt;br&gt;
checking the weather report in mobile application&lt;/p&gt;

&lt;p&gt;here the request sending to data base and receiving the data from the data base and showing in the screen.&lt;/p&gt;

&lt;p&gt;here checking the API calling to data base is correctly&lt;br&gt;
receiving is correctly or not and&lt;br&gt;
displaying in the screen correctly or not &lt;/p&gt;

&lt;p&gt;Like this the entire system is checking correctly as the requirements.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Regression Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; It involves retesting the software application to ensure new code changes does not introduce new bugs or defects in the previous functionality.&lt;/li&gt;
&lt;li&gt; It is conducted after code changes &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;User Acceptance Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It is the Final testing after the complete development is done and before the deployment.&lt;/li&gt;
&lt;li&gt;It is done by the end users to verify that it meets the requiments or not&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Non-Functional Testing
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Documentation Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; It is nothing but to refer the required documents, standards, validations, user manuals to verify the correctness.&lt;/li&gt;
&lt;li&gt; It is performed throught the development lifecycle.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Installation Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; It evaluates the installation of software application including installation and uninstallation process. i.e to ensure no errors after the installation is done.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Performance Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; It is used to test the speed, responsiveness, scalability, reliability stability under various conditions.&lt;/li&gt;
&lt;li&gt;Also the various tests such as load testing, Stress testing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Reliability Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It tests the ability to perform consistently and accurately over a time.&lt;/li&gt;
&lt;li&gt;It identify the issues, data corruption crashes.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Security Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; It is mainly done by cyber security team.&lt;/li&gt;
&lt;li&gt; It is used to identify the vulnerabilities malicious actors, protect data, resist security attacks&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Task 2</title>
      <dc:creator>yogeswaran</dc:creator>
      <pubDate>Mon, 18 Dec 2023 17:11:40 +0000</pubDate>
      <link>https://dev.to/yogeswaran374/task-2-46pj</link>
      <guid>https://dev.to/yogeswaran374/task-2-46pj</guid>
      <description>&lt;p&gt;&lt;strong&gt;Testing techniques&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Technique is a procedure or way to test the software and testing is nothing but by comparing the actual and expected results of the test case.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Software tesing technique is helps to design the test case in such a way that minimal steps to write test cases are involved to test faster and capture maximum functionalities of the software.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Different types of testing techniques&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Boundary Value Analysis&lt;/li&gt;
&lt;li&gt;Equivalence Class Partitioning&lt;/li&gt;
&lt;li&gt;Desition Table Analysis&lt;/li&gt;
&lt;li&gt;Use case Testing&lt;/li&gt;
&lt;li&gt;Linear code sequence and jump testing(LCSAJ)&lt;/li&gt;
&lt;/ol&gt;

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

&lt;ul&gt;
&lt;li&gt;This testing will be used to test at the boundaries between partitions. It includes maximum, minimum, inside or outside boundary, typical values and error values.&lt;/li&gt;
&lt;li&gt;It is used to identify errors at boudaries of defined input values rather than the center. &lt;/li&gt;
&lt;li&gt;Where the test cases are selected at the edges of the values.
It is also known as Black box testing.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;for example: lets take the condition between 1 to 10&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;     1 ___________________________10
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;here,                                 same&lt;br&gt;
outside boundary is 0          inside boudary is   9&lt;br&gt;
mininum value is    1          maximum boundary is 10&lt;br&gt;
inside boudary is   2          outside boundary is 11&lt;/p&gt;

&lt;p&gt;Boundary values are 0,1,2 and 9,10,11&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Equivalence Class Partitioning&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; It divides the input data into groups or set that the system behaviour is expected to be same. &lt;/li&gt;
&lt;li&gt; It is used in range of valid inputs like 1 to 10 and 20 to 30 and grouping into ... to 0, 1 to 10, 11 to 19, 20 to 30 and 31 to ... here to reduce the testcases instead of by using the BVA use ECP.&lt;/li&gt;
&lt;li&gt; In this used to identify valid and invalid cases. It is also known as Black Box Testing.
Example test cases
--- to 0 (invalid)
1 to 10 (valid)
11 to 19 (invalid)
20 to 30 (valid)
31 to ... (invalid)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Decision Table Analysis&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It is used to test the combination of input condition that leads to different outcomes i.e multiple inputs can result in various behaiour.&lt;/li&gt;
&lt;li&gt;It is also known as Black Box testing or Cause effect table
&lt;strong&gt;&lt;em&gt;Example&lt;/em&gt;&lt;/strong&gt;
&lt;strong&gt;if prime user&lt;/strong&gt;
A user is purchasing above 3000 --&amp;gt; 15% discount
A user is purchasing below 3000 --&amp;gt; 10% discount
&lt;strong&gt;if non prime user&lt;/strong&gt;
A user is purchasing above 3000 --&amp;gt; 5% discount
A user is purchasing below 3000 --&amp;gt; 0 discount&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here combination is &lt;br&gt;
1 - prime/non prime user&lt;br&gt;
2 - price&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use Case Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It is used to tesing the behavious of the system by using the various transition between different state.&lt;/li&gt;
&lt;li&gt;By giving the positive and negative input values for evaluating the system behaviour&lt;/li&gt;
&lt;li&gt;It is also known as Grey box tesing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Example: ATM machine&lt;br&gt;
Entering crt pin  ---&amp;gt; allows to take case&lt;br&gt;
    |&lt;br&gt;
    |&lt;br&gt;
incorrect pin --&amp;gt; error msg and againg allow to enter pin&lt;br&gt;
                             |&lt;br&gt;
                             |&lt;br&gt;
              if correct pin allows to take case &lt;br&gt;
              if incorrect pin again error msg and the card is blocked to take card.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Error Guessing&lt;/strong&gt;&lt;br&gt;
     It is based on guessing the error by using the experience to guess the problematic part of test application&lt;br&gt;
Example &lt;br&gt;
a= ?, b = ?&lt;br&gt;
a/b &lt;br&gt;
here if the denomination is '0' it throws the error&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;LCSAJ Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; In this technique is used to test the entire program from begining to end of the program if it is branches to test the branches also.&lt;/li&gt;
&lt;li&gt; It is also known as White Box testing.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Example: person eligible to vote or not by using the age.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;           18 &amp;amp; above eligible to vote

 Age        

           less than 18

                  than it is 10 to 17 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;i.e it is going to test branch by branch&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Task 2</title>
      <dc:creator>yogeswaran</dc:creator>
      <pubDate>Mon, 18 Dec 2023 17:03:52 +0000</pubDate>
      <link>https://dev.to/yogeswaran374/task-2-1ljb</link>
      <guid>https://dev.to/yogeswaran374/task-2-1ljb</guid>
      <description>&lt;p&gt;&lt;strong&gt;Testing techniques&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Technique is a procedure or way to test the software and testing is nothing but by comparing the actual and expected results of the test case.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Software tesing technique is helps to design the test case in such a way that minimal steps to write test cases are involved to test faster and capture maximum functionalities of the software.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Different types of testing techniques&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Boundary Value Analysis&lt;/li&gt;
&lt;li&gt;Equivalence Class Partitioning&lt;/li&gt;
&lt;li&gt;Desition Table Analysis&lt;/li&gt;
&lt;li&gt;Use case Testing&lt;/li&gt;
&lt;li&gt;Linear code sequence and jump testing(LCSAJ)&lt;/li&gt;
&lt;/ol&gt;

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

&lt;ul&gt;
&lt;li&gt;This testing will be used to test at the boundaries between partitions. It includes maximum, minimum, inside or outside boundary, typical values and error values.&lt;/li&gt;
&lt;li&gt;It is used to identify errors at boudaries of defined input values rather than the center. &lt;/li&gt;
&lt;li&gt;Where the test cases are selected at the edges of the values.
It is also known as Black box testing.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;for example: lets take the condition between 1 to 10&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;     1 ___________________________10
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;here,&lt;br&gt;&lt;br&gt;
outside boundary is 0&lt;br&gt;&lt;br&gt;
mininum value is    1&lt;br&gt;&lt;br&gt;
inside boudary is   2          &lt;/p&gt;

&lt;p&gt;same&lt;br&gt;
inside boundary is 9&lt;br&gt;
maximum boundary is  10&lt;br&gt;
outside boundary is 11&lt;/p&gt;

&lt;p&gt;Boundary values are 0,1,2 and 9,10,11&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Equivalence Class Partitioning&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; It divides the input data into groups or set that the system behaviour is expected to be same. &lt;/li&gt;
&lt;li&gt; It is used in range of valid inputs like 1 to 10 and 20 to 30 and grouping into ... to 0, 1 to 10, 11 to 19, 20 to 30 and 31 to ... here to reduce the testcases instead of by using the BVA use ECP.&lt;/li&gt;
&lt;li&gt; In this used to identify valid and invalid cases. It is also known as Black Box Testing.
Example test cases&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;--- to 0 (invalid)&lt;/p&gt;

&lt;p&gt;1 to 10 (valid)&lt;/p&gt;

&lt;p&gt;11 to 19 (invalid)&lt;/p&gt;

&lt;p&gt;20 to 30 (valid)&lt;/p&gt;

&lt;p&gt;31 to ... (invalid)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Decision Table Analysis&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It is used to test the combination of input condition that leads to different outcomes i.e multiple inputs can result in various behaiour.&lt;/li&gt;
&lt;li&gt;It is also known as Black Box testing or Cause effect table
&lt;strong&gt;&lt;em&gt;Example&lt;/em&gt;&lt;/strong&gt;
&lt;strong&gt;if prime user&lt;/strong&gt;
A user is purchasing above 3000 --&amp;gt; 15% discount
A user is purchasing below 3000 --&amp;gt; 10% discount
&lt;strong&gt;if non prime user&lt;/strong&gt;
A user is purchasing above 3000 --&amp;gt; 5% discount
A user is purchasing below 3000 --&amp;gt; 0 discount&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here combination is &lt;br&gt;
1 - prime/non prime user&lt;br&gt;
2 - price&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Use Case Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It is used to tesing the behavious of the system by using the various transition between different state.&lt;/li&gt;
&lt;li&gt;By giving the positive and negative input values for evaluating the system behaviour&lt;/li&gt;
&lt;li&gt;It is also known as Grey box tesing&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;Entering crt pin  ---&amp;gt; allows to take case&lt;br&gt;
    |&lt;br&gt;
    |&lt;br&gt;
incorrect pin --&amp;gt; error msg and againg allow to enter pin&lt;br&gt;
                             |&lt;br&gt;
                             |&lt;br&gt;
              if correct pin allows to take case &lt;br&gt;
              if incorrect pin again error msg and the card is blocked to take card.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Error Guessing&lt;/strong&gt;&lt;br&gt;
     It is based on guessing the error by using the experience to guess the problematic part of test application&lt;br&gt;
Example &lt;br&gt;
a= ?, b = ?&lt;br&gt;
a/b &lt;br&gt;
here if the denomination is '0' it throws the error&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;LCSAJ Testing&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; In this technique is used to test the entire program from begining to end of the program if it is branches to test the branches also.&lt;/li&gt;
&lt;li&gt; It is also known as White Box testing.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Example: person eligible to vote or not by using the age.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;           18 &amp;amp; above eligible to vote

 Age        

           less than 18

                  than it is 10 to 17 

           less than 10
                  than it goes to another bran 5 to 9
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;i.e it is going to test branch by branch&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Task 1</title>
      <dc:creator>yogeswaran</dc:creator>
      <pubDate>Mon, 11 Dec 2023 15:51:17 +0000</pubDate>
      <link>https://dev.to/yogeswaran374/task-1-3h55</link>
      <guid>https://dev.to/yogeswaran374/task-1-3h55</guid>
      <description>&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;What is software testing?&lt;/p&gt;

&lt;p&gt;Software testing is the part of development process it involves evaluating the software application&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;PURPOSE OF SOFTWARE TESTING:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Test the application works correctly&lt;/li&gt;
&lt;li&gt;It meets the requirements of the application&lt;/li&gt;
&lt;li&gt;Highly quality&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;KEY OBJECTIVES OF SOFTWARE TESTING:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Defects identification&lt;/li&gt;
&lt;li&gt;Quality assurance&lt;/li&gt;
&lt;li&gt;Risk mitigation(To reduce the risk of development i.e security hacking kind of things)&lt;/li&gt;
&lt;li&gt;Validation (purpose of developing the application)&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;What we need to know about software testing?&lt;/p&gt;

&lt;p&gt;Software testing has two types&lt;br&gt;
(i) Manual testing&lt;br&gt;
 In manual tesing each and every machine needs to be test manually&lt;br&gt;
for example: tesing the software application in 50 laptops, each and every laptops needs to be test individually.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;(ii) Automation testing&lt;br&gt;
     In automation tesing, by using the code to test the all application at a time&lt;/p&gt;

&lt;p&gt;The choosing the tesing is based on the test cases&lt;/p&gt;

&lt;p&gt;STAGES OF TESING&lt;br&gt;
(i) Unit tesing - Individual components/fields are testing example calculator(addition, subtraction,... etc)&lt;br&gt;
(ii) Integration tesing - In this tesingt the integration between two functions example( addition and subtraction testing in one test case)&lt;br&gt;
(iii) system tesing - entire function are tesing at a time&lt;br&gt;
(iv) UI tesing - graphical, screen transition, page loading, user experiencing about the good working&lt;br&gt;
(v) Acceptance testing - accepting when meets the required customer requirements.&lt;/p&gt;

&lt;p&gt;TYPES OF MANUAL TESTING:&lt;br&gt;
(i) Black box tesing - we tesing the behavious/functionality of internal structure or logics or code implementation&lt;br&gt;
for example: tesing the laptop while tesing the all buttons are working good or not (while pressing number 1 its correctly working or not like that tesing the internal functionality)&lt;br&gt;
(ii) White box or clear black box testing: a users know the entire knowledge of the code implementation/ structure/functionality like fully known about the application&lt;br&gt;
(iii) Grey box testing - It is the combination of black box and white box testing&lt;br&gt;
for exambple: tesing the functionality &amp;amp; internal knowledge of the application.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;What is the relevance of software testing?&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Software development life cycle&lt;br&gt;
PLANNING - what we want to built&lt;br&gt;
REQUIREMENTS - what is the requirements that customer required&lt;br&gt;
DESIGN - design the application&lt;br&gt;
CODING &lt;br&gt;
       - coding and tesing both are going simantanuously&lt;br&gt;
TESTING (DLC/HDLC subset of software development)&lt;br&gt;
DEPLOY - deploying the code to test the application to find issues/bugs.&lt;br&gt;
MAINTENANCE - after user experinence changes are done&lt;/p&gt;

&lt;p&gt;TYPES OF SDLC:&lt;br&gt;
(i) Waterfall method: it is a time taken process. Once the application is completely ready then it comes to the market. in below flow&lt;br&gt;
Requirements&lt;br&gt;
Design&lt;br&gt;
Implementation&lt;br&gt;
Testing&lt;br&gt;
Maintenance&lt;br&gt;
(ii) Agile method: It is working in a integration/loop manner. i.e each function is done in a loop manner. like in a calculator requirement is done we can release. its 100% not sure criteria at any time we can change the changes in the particular loop.&lt;/p&gt;

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