<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2283362142687523552</id><updated>2024-10-24T12:30:06.182-07:00</updated><category term="API Testing"/><category term="ALM"/><category term="API Testing Tools"/><category term="Agile Testing"/><category term="Boundary Value Analysis"/><category term="Cloud Testing"/><category term="Difference between Top down and Bottom up testing"/><category term="Equivalence Partitioning"/><category term="GUI Testing"/><category term="How to do  integration testing"/><category term="How to do Cookie Testing"/><category term="How to do GUI Testing"/><category term="How to prepare a effective bug report"/><category term="Integration Testing"/><category term="Salesforce Testing"/><category term="black box testing techniques"/><category term="fault error failure"/><category term="glossary of testing terms"/><category term="overview"/><category term="requirements testing"/><category term="smoke testing sanity testing"/><category term="software testing myths"/><category term="testing faqs"/><category term="types of software testing"/><category term="verification vs validation"/><title type='text'>how to do software testing free online software testing course</title><subtitle type='html'>how to do software testing,free online software testing tutorial,learn manual testing online free,learn automated testing,</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>51</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-8208385362494024222</id><published>2023-04-26T18:52:00.004-07:00</published><updated>2023-07-14T06:43:17.087-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Salesforce Testing"/><title type='text'>Ensuring Salesforce Functionality: The Importance of Thorough Testing</title><content type='html'>&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;br /&gt;&lt;br /&gt; Salesforce is a cloud-based customer relationship management (CRM) platform used by businesses of all sizes to manage their sales, marketing, and customer support operations. To ensure that Salesforce functions properly and meets business requirements, it is essential to perform thorough testing.&lt;/h3&gt;&lt;br /&gt;Salesforce testing involves testing various aspects of the platform, including data integrity, functionality, performance, and security. It is crucial to ensure that data is entered correctly, and the system can handle large amounts of data without slowing down or crashing. Functionality testing involves testing the various features of Salesforce, such as reports, workflows, and automation. Performance testing is necessary to ensure that Salesforce can handle a large number of users and transactions without slowing down. Finally, security testing involves testing the platform&#39;s security features to ensure that customer data is secure.&lt;br /&gt;&lt;br /&gt;In conclusion, Salesforce testing is a critical part of ensuring that the platform functions as intended and meets business requirements. It is essential to perform various types of testing to ensure data integrity, functionality, performance, and security. By doing so, businesses can provide a better customer experience and improve their overall operations.</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/8208385362494024222/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2023/04/ensuring-salesforce-functionality.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/8208385362494024222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/8208385362494024222'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2023/04/ensuring-salesforce-functionality.html' title='Ensuring Salesforce Functionality: The Importance of Thorough Testing'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-7328297718428344069</id><published>2023-04-20T07:47:00.004-07:00</published><updated>2023-07-14T06:42:25.293-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="API Testing Tools"/><title type='text'>what are the different  API testing tools available in the market</title><content type='html'>&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/h4&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;h3 style=&quot;text-align: left;&quot;&gt;&lt;i&gt; There are several API testing tools available in the market that offer various features and functionalities to help developers and testers perform effective API testing. Some of the popular API testing tools are:&lt;/i&gt;&lt;/h3&gt;&lt;i&gt;&lt;br /&gt;Postman: Postman is a widely used and powerful API testing tool that offers a user-friendly interface for creating, testing, and documenting APIs. It allows testers to easily send HTTP requests, inspect responses, and validate API endpoints. Postman also provides features for automating API testing, generating test scripts, and collaborating with team members.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Swagger UI: Swagger UI is an open-source tool that provides a graphical user interface for testing and documenting RESTful APIs. It allows testers to explore and test APIs using a web-based interface, view API documentation, and validate request and response data. Swagger UI also provides code snippets in multiple programming languages for easy API integration.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SoapUI: SoapUI is a widely used API testing tool specifically designed for testing SOAP and REST APIs. It offers a comprehensive set of features for creating, running, and validating API test cases, including support for data-driven testing, security testing, and performance testing. SoapUI also provides advanced reporting and analysis features for in-depth API testing.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;JUnit: JUnit is a popular Java-based testing framework that can also be used for API testing. It provides annotations, assertions, and test runners for writing and executing API tests in Java. JUnit also integrates well with build tools and continuous integration/continuous delivery (CI/CD) pipelines, making it a popular choice for API testing in Java-based projects.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;REST-Assured: REST-Assured is a Java-based library for testing RESTful APIs. It provides a simple and expressive syntax for writing API tests, along with powerful features for handling request and response data, authentication, and validation. REST-Assured also supports integration with popular Java testing frameworks like JUnit and TestNG.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Karate: Karate is an open-source API testing tool that supports both RESTful and GraphQL APIs. It offers a simple and expressive syntax for writing API tests in a feature-file format, making it easy to understand and maintain. Karate also provides advanced features for data-driven testing, parallel test execution, and reporting.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Insomnia: Insomnia is a popular API testing tool that provides a user-friendly interface for creating, testing, and debugging APIs. It offers a wide range of features, including support for RESTful, GraphQL, and WebSocket APIs, authentication, environment variables, and code generation. Insomnia also provides advanced collaboration features for team-based API testing.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Dredd: Dredd is an open-source API testing tool specifically designed for testing API documentation against API endpoints. It automates the process of testing API endpoints based on the documentation written in API Blueprint or OpenAPI/Swagger format. Dredd also provides reporting features for generating detailed test reports.&lt;br /&gt;&lt;br /&gt;These are just a few examples of the many API testing tools available in the market. The choice of API testing tool may depend on various factors such as the programming language used in your project, the type of APIs being tested, the features and functionalities required, and the team&#39;s familiarity with the tool. It&#39;s important to evaluate and choose the right API testing tool that best fits your specific requirements and helps you ensure the quality and reliability of your APIs.&lt;/i&gt;</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/7328297718428344069/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2023/04/what-are-different-api-testing-tools.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/7328297718428344069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/7328297718428344069'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2023/04/what-are-different-api-testing-tools.html' title='what are the different  API testing tools available in the market'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-2852041245243502430</id><published>2023-04-20T07:15:00.000-07:00</published><updated>2024-10-03T07:20:32.833-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="API Testing"/><title type='text'>Unlocking the Power of APIs: A Comprehensive Guide to API Testing for Robust and Reliable Software Development</title><content type='html'>&lt;h4 style=&quot;text-align: left;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;br /&gt; Unlocking the Power of APIs: A Comprehensive Guide to API Testing for Robust and Reliable Software Development&lt;/i&gt;&lt;/h4&gt;&lt;i&gt;&lt;br /&gt;APIs (Application Programming Interfaces) have become the driving force behind modern software development, enabling seamless communication and interaction between different software systems. As APIs play a crucial role in today&#39;s software applications, thorough API testing is essential to ensure their robustness, reliability, and performance. In this comprehensive guide, we will delve into the importance of API testing and highlight various key aspects, including functional testing, performance testing, security testing, compatibility testing, error handling testing, and documentation testing.&lt;br /&gt;&lt;br /&gt;Functional testing is a fundamental aspect of API testing, which involves testing different API endpoints, request and response formats, error handling mechanisms, and authentication methods. By thoroughly testing the functionalities of APIs, developers can ensure that they are working as expected and delivering accurate results.&lt;br /&gt;&lt;br /&gt;Performance testing is vital to assess the performance and scalability of APIs under varying loads and stress conditions. This type of testing helps identify performance bottlenecks, such as slow response times or high resource utilization, and ensures that APIs can handle the expected load and provide optimum performance in real-world scenarios.&lt;br /&gt;&lt;br /&gt;Security testing is paramount in API testing to assess the security measures implemented in APIs, such as authentication, authorization, and encryption. This type of testing helps identify potential security vulnerabilities and ensures that APIs are secure against unauthorized access, data breaches, and other security threats.&lt;br /&gt;&lt;br /&gt;Compatibility testing is crucial to verify if APIs are compatible with different operating systems, browsers, and devices. This type of testing ensures that APIs can seamlessly function across different environments, providing a consistent experience to end-users.&lt;br /&gt;&lt;br /&gt;Error handling testing focuses on how APIs handle different types of errors and exceptions, including invalid inputs, unexpected outputs, and error responses. By thoroughly testing error handling mechanisms, developers can ensure that APIs are resilient and can gracefully handle unexpected situations, preventing any potential system failures or crashes.&lt;br /&gt;&lt;br /&gt;Documentation testing ensures that APIs are well-documented, providing accurate information on their usage, parameters, and expected results. Well-documented APIs enable developers to effectively utilize APIs in their software applications, reducing development time and effort.&lt;br /&gt;&lt;br /&gt;In conclusion, API testing is an essential step in software development to ensure the robustness, reliability, and performance of APIs. By conducting thorough testing in various key aspects, including functional testing, performance testing, security testing, compatibility testing, error handling testing, and documentation testing, developers can ensure that APIs are working as expected, performing well, secure, compatible, and well-documented. Implementing comprehensive API testing practices will result in the delivery of high-quality and dependable software products, unlocking the full potential of APIs in modern software development.&lt;/i&gt;</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/2852041245243502430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2023/04/unlocking-power-of-apis-comprehensive.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/2852041245243502430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/2852041245243502430'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2023/04/unlocking-power-of-apis-comprehensive.html' title='Unlocking the Power of APIs: A Comprehensive Guide to API Testing for Robust and Reliable Software Development'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-66605238970150347</id><published>2023-04-20T07:11:00.001-07:00</published><updated>2023-07-14T06:37:39.151-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="API Testing"/><title type='text'>API Testing: Ensuring Robustness and Reliability in Software Development</title><content type='html'>&lt;h2 style=&quot;text-align: left;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/h2&gt;&lt;i&gt;&lt;br /&gt;API Testing: Ensuring Robustness and Reliability in Software Development&lt;br /&gt;&lt;br /&gt;Application Programming Interfaces (APIs) are the backbone of modern software development, allowing different software systems to communicate and interact with each other. API testing is a crucial step in the software development lifecycle that helps ensure the robustness and reliability of APIs.&lt;br /&gt;&lt;br /&gt;API testing involves testing the functionalities, performance, security, and other critical aspects of APIs. It ensures that APIs are working as intended, returning accurate results, and handling various inputs and outputs effectively. With the growing reliance on APIs in today&#39;s software applications, thorough API testing has become paramount to deliver high-quality and dependable software products.&lt;br /&gt;&lt;br /&gt;One of the key aspects of API testing is functional testing, which verifies if APIs are functioning as expected. This includes testing different API endpoints, request and response formats, error handling, and authentication mechanisms. It helps identify any functional issues and ensures that APIs are performing according to the specifications and requirements.&lt;br /&gt;&lt;br /&gt;Performance testing is another crucial aspect of API testing. It involves testing the performance and scalability of APIs under different loads and stress conditions. This helps identify any performance bottlenecks, such as slow response times or high resource utilization, and ensures that APIs can handle the expected load and provide optimum performance in real-world scenarios.&lt;br /&gt;&lt;br /&gt;Security testing is also essential in API testing. It involves testing the security measures implemented in APIs, such as authentication, authorization, and encryption. This helps identify any potential security vulnerabilities and ensures that APIs are secure against unauthorized access, data breaches, and other security threats.&lt;br /&gt;&lt;br /&gt;Moreover, API testing also includes testing for compatibility, error handling, and documentation. Compatibility testing ensures that APIs are compatible with different operating systems, browsers, and devices. Error handling testing focuses on how APIs handle different types of errors and exceptions, and documentation testing ensures that APIs are well-documented, providing accurate information on their usage, parameters, and expected results.&lt;br /&gt;&lt;br /&gt;In conclusion, API testing is a critical step in software development to ensure the robustness and reliability of APIs. It involves functional testing, performance testing, security testing, compatibility testing, error handling testing, and documentation testing. By thoroughly testing APIs, software developers can ensure that their APIs are functioning as intended, performing well, secure, compatible, and well-documented, leading to the delivery of high-quality and dependable software products.&lt;/i&gt;</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/66605238970150347/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2023/04/api-testing-ensuring-robustness-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/66605238970150347'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/66605238970150347'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2023/04/api-testing-ensuring-robustness-and.html' title='API Testing: Ensuring Robustness and Reliability in Software Development'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-3573608777037461190</id><published>2016-11-14T21:45:00.000-08:00</published><updated>2016-11-14T21:45:04.532-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ALM"/><title type='text'>What is meant by ALM and different types of ALM tools available in the market.</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
ALM&amp;nbsp;&amp;nbsp; Stands for&amp;nbsp; Application Life Cycle Management&lt;/h2&gt;
ALM is a web based tool which helps in tracking the different stages involved in the software development of the application.&lt;br /&gt;
It is&amp;nbsp; also helpful in tracking the status of each phase involved in the development of the application.&lt;br /&gt;
&lt;br /&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
Some of the different ALM tools available in the market.&lt;/h2&gt;
&lt;br /&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
JIRA&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/h3&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Rational Team Concert&amp;nbsp;&amp;nbsp;&lt;/h3&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Mylyn&lt;/h3&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
HP ALM&lt;/h3&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Team Foundation Server &amp;nbsp;&amp;nbsp;&lt;/h3&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/h2&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
Some of the open source ALM tool&lt;/h2&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&amp;nbsp;&lt;/h2&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
MyCollab&lt;/h3&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Odoo&lt;/h3&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Taiga&lt;/h3&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
OrangeScrum&lt;/h3&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Tuleap Open ALM&lt;/h3&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
Agilefant&lt;/h3&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/h3&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/h3&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/h3&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/3573608777037461190/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2016/11/what-is-meant-by-alm-and-different.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/3573608777037461190'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/3573608777037461190'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2016/11/what-is-meant-by-alm-and-different.html' title='What is meant by ALM and different types of ALM tools available in the market.'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-4462699876419323786</id><published>2013-10-24T23:22:00.001-07:00</published><updated>2013-10-24T23:22:29.008-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Cloud Testing"/><title type='text'>What is Cloud Testing</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;What is Cloud Testing&lt;/i&gt;&lt;/h2&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&quot;Cloud testing basically aligns with the concept of Cloud and SaaS. It provides ability to test by leveraging the cloud , thereby bringing the same benefits that the cloud brings to customers&quot;.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Cloud based software testing refers to testing and measurement activities on a cloud based environment and infrastructure by leveraging cloud technologies and solutions. It has four major objectives.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;ul style=&quot;text-align: left;&quot;&gt;
&lt;li&gt;&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;To assure the quality of cloud-based applications deployed in a cloud, including their functional services,business processes,and system performance as well as scalability &amp;nbsp;based on set of application-based system requirements in a cloud.&lt;/span&gt;&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;To validate Software as a Service(SaaS) in a cloud environment, including software performance , scalability, security and measurement based on certain economic scales and pre-defined SLA&#39;s.&lt;/span&gt;&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;To check the provided automatic cloud-based functional services for example auto-provisioned functions.&lt;/span&gt;&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;To test cloud compatibility and inter-operation capability between SaaS and application in a cloud infrastructure.&lt;/span&gt;&lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/4462699876419323786/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/10/what-is-cloud-testing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/4462699876419323786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/4462699876419323786'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/10/what-is-cloud-testing.html' title='What is Cloud Testing'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-4890322664963282337</id><published>2013-07-20T22:00:00.001-07:00</published><updated>2013-07-23T19:37:45.900-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How to do GUI Testing"/><title type='text'>How to do GUI Testing</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;How to do GUI Testing&lt;/i&gt;&lt;/h2&gt;
&lt;div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;How to Perform GUI Testing?&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Basically GUI testing is performed to check the user interface and test the functionality working properly or not. GUI testing involves several tasks like to test all object events, mouse events, menus, fonts, images, content, control lists, etc. GUI testing improves the overall look and feel of the application according to the requirements. User interface for the website should be designed to attract the audiences globally. There are both options available to the testers one is manual and second is to automate with the use of an automation tool like QTP. There is planning required for all the stages in testing.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Below discussed points will let to know how to perform GUI Testing:&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;First of all tester should be aware and understand design documents for the testing application. All the mentioned requirements need to be checked properly with exact figures for font size, images, navigations, controls listed in the application.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Create the environment and test the application in different browsers like Mozilla, IE, Opera, and Safari. Sometimes design for the application does not work or behave properly in other browsers. So, make sure you are testing in all the browsers.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Testers can check manually and if you are finding it difficult to test if application has N number of pages then chooses the option to automate the application. You can easily record the application with all respective controls to test with. And at the end iterations can be checked that they are passed or failed.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Prepare a checklist for the GUI testing since there are many things which is related to the user interface. Make out in one sheet and execute them for the application.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Prepare all the test cases for the user interface to perform the GUI testing effectively.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Tester should divide all the modules which are available in the application and start performing testing module wise. This process can be easily tested and there are high chances of getting defects.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Above mentioned points are very beneficial in performing GUI testing. Tester should be more focussed on how to test the application. Planning to test the system or application is very necessary to achieve the respective goals with the help of GUI testing. Testing should be performed in keeping mind the perspective of the users who will come and use the application. Remember first impression is last impression.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.bloghints.com&quot;&gt;&lt;img src=&quot;http://www.bloghints.com/images/button.gif&quot; alt=&quot;Blog Directory&quot; width=&quot;80&quot; height=&quot;15&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;http://www.blogsitelist.com/&quot;&gt;Blog Site List&lt;/a&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/4890322664963282337/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-do-gui-testing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/4890322664963282337'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/4890322664963282337'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-do-gui-testing.html' title='How to do GUI Testing'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-1113090302747160913</id><published>2013-07-20T21:54:00.003-07:00</published><updated>2013-07-21T22:42:59.935-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How to do Cookie Testing"/><title type='text'>How to do Cookie Testing</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
How to do Cookie Testing&lt;/h2&gt;
&lt;div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;What is Cookie?&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Cookie is to be known as text a file that gets saved in the hard disk of the user’s system. Browsers are required to use the cookies which have been saved in the desired location. Informative data is recorded in the cookie and that can be retrieved for the web pages.&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;How to do Cookie Testing?&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Being a tester, testing for the cookies is very essential since there are many web applications which include informative content and payment transactions. Below are the steps which should be considered while doing testing:&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Major cookie testing involves disabling the cookie from the option available in every browser. You need to make sure that cookies are disabled and access the respective website and check the functionality of the pages that are working properly or not. Browse the whole website and see for crashes. Basically, message should be displayed as “Cookies are disabled. Please enable the cookies to browse the website easily”.&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Another testing should be performed after corrupting the cookies. For corrupting the cookies you make sure the location of the cookies and manually edit respective cookie with fake figures or with any invalid data and save them. In some cases, internal information of the domain can be easily accessed/ hacked with the help of corrupted cookies. If you are testing banking or finance domain then this point should come first in your checklist.&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Remove all the cookies for the website you are testing and check all the website pages that are working properly.&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Cookie testing can be performed on different browsers to check whether the website is writing the cookies or not. You can check cookies manually for the existence for each and every page.&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;If you are testing an application which authenticate login then get logged in with valid details. You will see the Username parameter in the address bar and can change it to see the behavior of the application. You should not get logged into different user’s account. Proper message is getting displayed or not for the action you have performed.&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Therefore, above discussed is the most important cookie testing concepts that tell how to do cookie testing. Cookie testing is really necessary and it should not be missed from the hands of testers while testing any web application. Cookie testing really make the application more stable if any issues found.&lt;/i&gt;&lt;/span&gt;
&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.bloghints.com&quot;&gt;&lt;img src=&quot;http://www.bloghints.com/images/button.gif&quot; alt=&quot;Blog Directory&quot; width=&quot;80&quot; height=&quot;15&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/1113090302747160913/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-do-cookie-testing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/1113090302747160913'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/1113090302747160913'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-do-cookie-testing.html' title='How to do Cookie Testing'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-97325962583417502</id><published>2013-07-20T21:49:00.001-07:00</published><updated>2023-07-14T07:00:57.729-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="GUI Testing"/><title type='text'>Things to look after in GUI Testing</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;Things to look after in GUI Testing&lt;/i&gt;&lt;/h2&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Ideally, motive of the GUI testing is to recognize your application which is according to the specific standards for graphical user interface. These checklists would be beneficial for the QA and development team. Checklist must be comprises of all the GUI components that will be tested systematically. Below is the checklist which is really beneficial for every tester to perform under GUI testing for specific application:&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;div&gt;
Colors used in the web application:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Check the colors for the hyperlinks.&lt;/div&gt;
&lt;div&gt;
Background color for all the pages should be tested.&lt;/div&gt;
&lt;div&gt;
Color for the warning message should be checked.&lt;/div&gt;
&lt;div&gt;
Content used in the web application:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Font on the whole website should be same according the requirements.&lt;/div&gt;
&lt;div&gt;
Check that content is properly aligned or not.&lt;/div&gt;
&lt;div&gt;
All the labels should be proper aligned&lt;/div&gt;
&lt;div&gt;
Check all the content for respective words to be in lower and upper case.&lt;/div&gt;
&lt;div&gt;
Check all the error message on the screen and should not have any spelling mistake.&lt;/div&gt;
&lt;div&gt;
Images used in the web application:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Check all the graphics should be proper aligned.&lt;/div&gt;
&lt;div&gt;
Check for the broken images all over.&lt;/div&gt;
&lt;div&gt;
Check the size for the graphics used or uploaded.&lt;/div&gt;
&lt;div&gt;
Check all the banners and their size.&lt;/div&gt;
&lt;div&gt;
Check the buttons for the respective command like size, font and font size.&lt;/div&gt;
&lt;div&gt;
Navigation in the application:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
All the tabs should be loaded on time.&lt;/div&gt;
&lt;div&gt;
Tabs should be displayed in sequence.&lt;/div&gt;
&lt;div&gt;
All the tabs from the left to right should be correct according to the requirements.&lt;/div&gt;
&lt;div&gt;
Check scrollbar is getting displayed if required.&lt;/div&gt;
&lt;div&gt;
Check all the links given in the sitemap and see for broken links.&lt;/div&gt;
&lt;div&gt;
Usability in the application:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Check the font size and it should be readable.&lt;/div&gt;
&lt;div&gt;
Check the spelling for all the fields that they are prompting properly or not.&lt;/div&gt;
&lt;div&gt;
Check whole website’s look and feel.&lt;/div&gt;
&lt;div&gt;
Test the website in all resolutions like 640x480 etc.&lt;/div&gt;
&lt;div&gt;
Hence, if the entire checklist followed then there is no chance of missing any requirement from the hands of tester and developer. It is suggested to draft all the points in the excel sheet and add the columns pass and fail against each checklist. And send the development team after performing testing cycle. There are other tools which are also available and it is apart from the manual testing like web link validator to check broken link and online w3c validator tool for checking usability standards.&lt;/div&gt;
&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;

&lt;/span&gt;&lt;/i&gt; &lt;a href=&quot;http://www.bloghints.com&quot;&gt;&lt;img src=&quot;http://www.bloghints.com/images/button.gif&quot; alt=&quot;Blog Directory&quot; width=&quot;80&quot; height=&quot;15&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/97325962583417502/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/things-to-look-after-in-gui-testing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/97325962583417502'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/97325962583417502'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/things-to-look-after-in-gui-testing.html' title='Things to look after in GUI Testing'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-2468506619806212407</id><published>2013-07-20T21:44:00.002-07:00</published><updated>2013-07-21T22:47:37.735-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Agile Testing"/><title type='text'>What do you mean by Agile Testing</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;What do you mean by Agile Testing&lt;/i&gt;&lt;/h2&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;background-color: white;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;font-family: sans-serif; font-style: italic; line-height: 19.1875px;&quot;&gt;
&lt;span style=&quot;background-color: white;&quot;&gt;Agile testing involves all members of a cross-functional agile team, with special expertise contributed by testers, to ensure delivering the business value desired by the customer at frequent intervals, working at a sustainable pace.&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;background-color: white;&quot;&gt;
&lt;/span&gt;
&lt;div style=&quot;font-family: sans-serif; font-size: 13px; font-style: italic; line-height: 19.1875px;&quot;&gt;
&lt;span style=&quot;background-color: white;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;background-color: white;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 19.1875px;&quot;&gt;&lt;i&gt;Agile Testing Myth&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 19.1875px;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 19.1875px;&quot;&gt;&lt;i&gt;One thing that must bind it tight to your minds is that Agile Testing is not an easy task to undertake. The other important thing is to nullify the statement that Agile Testing can be done without the need of the testers. Get in touch with your developers to obtain each and every minute detail on the Application workflow in order to come out with successful Black box as well as White Box Testing in short span of time.&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 19.1875px;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 19.1875px;&quot;&gt;&lt;i&gt;Challenges in Agile Testing&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 19.1875px;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 19.1875px;&quot;&gt;&lt;i&gt;&lt;a href=&quot;http://www.verification-validation.blogspot.com/&quot;&gt;Agile Testing&lt;/a&gt; offers an open door policy for the requirements to creep in any time during any phase of the project and it will be greeted vey graciously and tested as per it is intended to function. Though not an easy task, but becomes a challenge for the team working on Agile methodology to accommodate the same in the already allotted functionalities to be validated.&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 19.1875px;&quot;&gt;&lt;i&gt;Because Agile methodologies move faster, it becomes a challenge for the team to navigate through whole application. Proper approach needs to be followed in order to accomplish the same such as Testing the application as per Risk-based Strategy can do wonders and also prioritizing the Test scenarios as per their priority will enhance the quality of the deliverable.&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 19.1875px;&quot;&gt;&lt;i&gt;In case of incomplete or inadequate unit testing performed by the developers, it is the testers who are at target to showcase their abilities in finding out the 90% of the hidden bugs missed by developers. It is indeed a challenging task considering the time frame of the testing phase that Agile methodology offers.&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 19.1875px;&quot;&gt;&lt;i&gt;It is not only new functionalities that need to be working as designed but Agile Testers also need to make sure that the already placed functionalities do not get affected and hence regression testing plays a vital role in Agile Methodology.&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 19.1875px;&quot;&gt;&lt;i&gt;Projects following Agile approach always lack with the appropriate documents and hence it becomes a challenging job for the testers to validate the requirements with the developers and confirm if the same is expected to work the way it is reflecting in the application else an another resource of communication will be required which will involve the customers of this Application to get the queries clarified and test accordingly.&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: sans-serif;&quot;&gt;&lt;span style=&quot;line-height: 19.1875px;&quot;&gt;&lt;i&gt;Looking at the Challenges that Agile Testing is equipped with; it indeed becomes a very difficult task though not impossible to meet the expected commitment and deadlines&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.bloghints.com&quot;&gt;&lt;img src=&quot;http://www.bloghints.com/images/button.gif&quot; alt=&quot;Blog Directory&quot; width=&quot;80&quot; height=&quot;15&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/2468506619806212407/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/what-do-you-mean-by-agile-testing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/2468506619806212407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/2468506619806212407'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/what-do-you-mean-by-agile-testing.html' title='What do you mean by Agile Testing'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-2279110755250275789</id><published>2013-07-20T19:19:00.000-07:00</published><updated>2013-07-21T19:21:04.865-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Difference between Top down and Bottom up testing"/><title type='text'>Difference between Top down Testing and Bottom Up Testing</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;Difference between Top down Testing and Bottom Up Testing&lt;/i&gt;&lt;/h2&gt;
&lt;div&gt;
&lt;i&gt;&lt;/i&gt;&lt;br /&gt;
&lt;div&gt;
&lt;i&gt;Top down Testing: In this approach testing is conducted from main module to sub module. if the sub module is not developed a temporary program called STUB is used for simulate the submodule.&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;
&lt;/i&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;
&lt;/i&gt;
&lt;div&gt;
&lt;i&gt;Advantages:&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
- Advantageous if major flaws occur toward the top of the program.&lt;/div&gt;
&lt;div&gt;
- Once the I/O functions are added, representation of test cases is easier.&lt;/div&gt;
&lt;div&gt;
- Early skeletal Program allows demonstrations and boosts morale.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Disadvantages:&lt;/div&gt;
&lt;div&gt;
- Stub modules must be produced&lt;/div&gt;
&lt;div&gt;
- Stub Modules are often more complicated than they first appear to be.&lt;/div&gt;
&lt;div&gt;
- Before the I/O functions are added, representation of test cases in stubs can be difficult.&lt;/div&gt;
&lt;div&gt;
- Test conditions ma be impossible, or very difficult, to create.&lt;/div&gt;
&lt;div&gt;
- Observation of test output is more difficult.&lt;/div&gt;
&lt;div&gt;
- Allows one to think that design and testing can be overlapped.&lt;/div&gt;
&lt;div&gt;
- Induces one to defer completion of the testing of certain modules.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Bottom up testing: In this approach testing is conducted from sub module to main module, if the main module is not developed a temporary program called DRIVERS is used to simulate the main module.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Advantages:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
- Advantageous if major flaws occur toward the bottom of the program.&lt;/div&gt;
&lt;div&gt;
- Test conditions are easier to create.&lt;/div&gt;
&lt;div&gt;
- Observation of test results is easier.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Disadvantages:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
- Driver Modules must be produced.&lt;/div&gt;
&lt;div&gt;
- The program as an entity does not exist until the last module is added.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Stubs and Drivers&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
It is always a good idea to develop and test software in &quot;pieces&quot;. But, it may seem impossible because it is hard to imagine how you can test one &quot;piece&quot; if the other &quot;pieces&quot; that it uses have not yet been developed (and vice versa).&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
A software application is made up of a number of ‘Units’, where output of one ‘Unit’ goes as an ‘Input’ of another Unit. e.g. A ‘Sales Order Printing’ program takes a ‘Sales Order’ as an input, which is actually an output of ‘Sales Order Creation’ program.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Due to such interfaces, independent testing of a Unit becomes impossible. But that is what we want to do; we want to test a Unit in isolation! So here we use ‘Stub’ and ‘Driver.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
A ‘Driver’ is a piece of software that drives (invokes) the Unit being tested. A driver creates necessary ‘Inputs’ required for the Unit and then invokes the Unit.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Driver passes test cases to another piece of code. Test Harness or a test driver is supporting code and data used to provide an environment for testing part of a system in isolation. It can be called as as a software module which is used to invoke a module under test and provide test inputs, control and, monitor execution, and report test results or most simplistically a line of code that calls a method and passes that method a value.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
For example, if you wanted to move a fighter on the game, the driver code would bemoveFighter(Fighter, LocationX, LocationY);&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
This driver code would likely be called from the main method. A white-box test case would execute this driver line of code and check &quot;fighter.getPosition()&quot; to make sure the player is now on the expected cell on the board.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
A Unit may reference another Unit in its logic. A ‘Stub’ takes place of such subordinate unit during the Unit Testing.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
A ‘Stub’ is a piece of software that works similar to a unit which is referenced by the Unit being tested, but it is much simpler that the actual unit. A Stub works as a ‘Stand-in’ for the subordinate unit and provides the minimum required behavior for that unit. A Stub is a dummy procedure, module or unit that stands in for an unfinished portion of a system.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Four basic types of Stubs for Top-Down Testing are:&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
- Display a trace message&lt;/div&gt;
&lt;div&gt;
- Display parameter value(s)&lt;/div&gt;
&lt;div&gt;
- Return a value from a table&lt;/div&gt;
&lt;div&gt;
- Return table value selected by parameter&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
A stub is a computer program which is used as a substitute for the body of a software module that is or will be defined elsewhere or a dummy component or object used to simulate the behavior of a real component until that component has been developed.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
For example, if the movefighter method has not been written yet, a stub such as the one below might be used temporarily – which moves any player to position 1.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
public void moveFighter(Fighter player, int LocationX, int LocationY)&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
{fighter.setPosition(1);}&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Ultimately, the dummy method would be completed with the proper program logic. However, developing the stub allows the programmer to call a method in the code being developed, even if the method does not yet have the desired behavior.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Programmer needs to create such ‘Drivers’ and ‘Stubs’ for carrying out Unit Testing.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Both the Driver and the Stub are kept at a minimum level of complexity, so that they do not induce any errors while testing the Unit in question.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Stubs and drivers are often viewed as throwaway code. However, they do not have to be thrown away: Stubs can be &quot;filled in&quot; to form the actual method. Drivers can become automated test cases.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Example - For Unit Testing of ‘Sales Order Printing’ program, a ‘Driver’ program will have the code which will create Sales Order records using hardcoded data and then call ‘Sales Order Printing’ program. Suppose this printing program uses another unit which calculates Sales discounts by some complex calculations. Then call to this unit will be replaced by a ‘Stub’, which will simply return fix discount data.&lt;/div&gt;
&lt;div&gt;
&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;

&lt;/div&gt;
&lt;/i&gt;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/2279110755250275789/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/difference-between-top-down-testing-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/2279110755250275789'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/2279110755250275789'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/difference-between-top-down-testing-and.html' title='Difference between Top down Testing and Bottom Up Testing'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-4122182960304942856</id><published>2013-07-20T01:24:00.003-07:00</published><updated>2013-07-21T22:40:14.553-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How to prepare a effective bug report"/><title type='text'>How to prepare a effective bug report</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;How to prepare a effective bug report&lt;/span&gt;&lt;/h2&gt;
&lt;h2&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;After you complete your Software Testing, it is good practice to prepare an effective bug report. Fixing a bug depends on how effectively you report it. Below are some tips to write a good software bug report:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;If you are doing manual Software Testing and reporting bugs withour the help of any tool, assign a unique number to each bug report. This will help to identify the bug record.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Clearly mention the steps to reproduce the bug. Do not assume or skip any reproducing step.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Be Specific and to the point&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Apart from these tips, below are some good practices:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Report the problem immediately&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Reproduce the bug atleast one more time before you report it&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Test the same bug occurrence on other similar modules of the application&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Read bug report before you submit it or send it.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Never ever criticize any developer or attack any individual&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;&amp;nbsp;If you are using any Software Testing Management tool or any Bug reporting tool like Bugzilla or Test Director or Bughost or any other online bug tracking tool, then; the tool will automatically generate the bug report. If you are not using any tool, you may refer to the following template for your software bug report:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Name of Reporter:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Email Id of Reporter:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Version or Build: &amp;lt;Version or Build of the product&amp;gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Module or component: &amp;lt;mention here the name of tested module or component&amp;gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Platform / Operating System:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Type of error: &amp;lt;coding error / design error / suggestion / UI / documentation / text error / hardware error &amp;gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Priority:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Severity:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Status:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Assigned to:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Summary:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i style=&quot;font-weight: normal;&quot;&gt;Description: &amp;lt;mention here the steps to reproduce, expected result and actual result&amp;gt;&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;
&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;

&lt;/div&gt;&lt;a href=&quot;http://www.bloghints.com/&quot;&gt;Blog Directory | Submit to Directories and Promote your Blogs&lt;/a&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/4122182960304942856/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-prepare-effective-bug-report.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/4122182960304942856'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/4122182960304942856'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-prepare-effective-bug-report.html' title='How to prepare a effective bug report'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-4843953893497859129</id><published>2013-07-16T10:11:00.001-07:00</published><updated>2013-07-21T19:21:59.672-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How to do  integration testing"/><title type='text'>How to do Integration Testing</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;How to do Integration Testing&lt;/i&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h3 style=&quot;text-align: left;&quot;&gt;
&lt;i style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;Integration Testing is a four step procedure. Below are the steps for creating integration test cases:&lt;/i&gt;&lt;/h3&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;1. Identify Unit Interfaces: The developer of each program unit identifies and documents the unit’s interfaces for the following unit operations:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- External inquiry (responding to queries from terminals for information)- External input (managing transaction data entered for processing)- External filing (obtaining, updating, or creating transactions on computer files)- Internal filing (passing or receiving information from other logical processing units)- External display (sending messages to terminals)- External output (providing the results of processing to some output device or unit)&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;2. Reconcile Interfaces for Completeness: The information needed for the integration test template is collected for all program units in the software being tested. Whenever one unit interfaces with another, those interfaces are reconciled. For example, if program unit A transmits data to program unit B, program unit B should indicate that it has received that input from program unit A. Interfaces not reconciled are examined before integration tests are executed.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;3. Create Integration Test Conditions: One or more test conditions are prepared for integrating each program unit. After the condition is created, the number of the test condition is documented in the test template.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;4. Evaluate the Completeness of Integration Test Conditions: The following list of questions will help guide evaluation of the completeness of integration test conditions recorded on the integration testing template. This list can also help determine whether test conditions created for the integration process are complete.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;1. Is an integration test developed for each of the following external inquiries:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- Record test?- File test?- Search test?- Match/merge test?- Attributes test?- Stress test?- Control test?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;2. Are all interfaces between modules validated so that the output of one is recorded as input to another?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;3. If file test transactions are developed, do the modules interface with all those indicated files?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;4. Is the processing of each unit validated before integration testing?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;5. Do all unit developers agree that integration test conditions are adequate to test each unit’s interfaces?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;6. Are all software units included in integration testing?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;7. Are all files used by the software being tested included in integration testing?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;8. Are all business transactions associated with the software being tested included in integration testing?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;9. Are all terminal functions incorporated in the software being tested included in integration testing?&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;

&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/4843953893497859129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-do-integration-testing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/4843953893497859129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/4843953893497859129'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-do-integration-testing.html' title='How to do Integration Testing'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-7347738229437944508</id><published>2013-07-16T10:04:00.000-07:00</published><updated>2013-07-21T19:23:09.393-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Boundary Value Analysis"/><title type='text'>How to do Boundary Value Analysis</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;How to do Boundary Value Analysis&lt;/span&gt;&lt;/i&gt;&lt;/h2&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Boundary value is a software design technique to determine the test cases covering off by one errors.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Boundary value analysis is a methodology for designing test cases that concentrates software testing effort on cases near the limits of valid ranges Boundary value analysis is a method which refines equivalence partitioning. Boundary value analysis generates test cases that highlight errors better than equivalence partitioning.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;The purpose of boundary value analysis is to concentrate the testing effort on error prone areas by accurately pinpointing the boundaries of conditions,(e.g., a programmer may specify &amp;gt;, when the requirement states &amp;gt; or =).&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;To set up boundary value analysis test cases you first have to determine which boundaries you have at the interface of a software component.This has to be done by applying the equivalence partitioning technique. Boundary value analysis and equivalence partitioning are inevitably linked together. For the example of the month in a date you would have the following partitions:&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&amp;nbsp;... -2 -1 &amp;nbsp;0 1 .............. 12 13 &amp;nbsp;14 &amp;nbsp;15 .....&amp;nbsp;&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; --------------|-------------------|---------------------&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&amp;nbsp;invalid partition 1 &amp;nbsp; &amp;nbsp; valid partition &amp;nbsp; &amp;nbsp;invalid partition 2&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Applying boundary value analysis you have to select now a test case at each each side of the boundary between two partitions. In the above example this would be 0 and 1 for the lower boundary as well as 12 and 13 for the upper boundary. Each of these pairs consists of a &quot;clean&quot; and a &quot;dirty&quot; test case. A &quot;clean&quot; test case should give you a valid operation result of your program. A &quot;dirty&quot; test case should lead to a correct and specified input error treatment such as the limiting of values, the usage of a substitute value, or in case of a program with a user interface, it has to lead to warning and request to enter correct data. The boundary value analysis can have 6 testcases. n, n-1,n+1 for the upper limit and n, n-1,n+1 for the lower limit.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;There are two steps to perform boundary value analysis:&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;1. Identify the equivalence classes.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;2. Design test cases.&amp;nbsp;&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Step 1.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Follow the same rules you used in equivalence partitioning. However, consider the output specifications as well. For example, if the output specifications for the inventory system stated that a report on inventory should indicate a total quantity for all products no greater than 999,999, then you d add the following classes to the ones you found previously:&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&amp;nbsp;The valid class ( 0 &amp;lt; = total quantity on hand &amp;lt; = 999,999 )&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&amp;nbsp;The invalid class (total quantity on hand &amp;lt;0)&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&amp;nbsp;The invalid class (total quantity on hand&amp;gt; 999,999 )&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Step 2.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;In this step, you derive test cases from the equivalence classes. The process is similar to that of equivalence partitioning but the rules for designing test cases differ. With equivalence partitioning, you may select any test case within a range and any on either side of it with boundary analysis, you focus your attention on cases close to the edges of the range.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Rules for Test Cases&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;1. If the condition is a range of values, create valid test cases for each end of the range and invalid test cases just beyond each end of the range. For example, if a valid range of quantity on hand is -9,999 through 9,999, write test cases that include:&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;1. &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;the valid test case quantity on hand is -9,999&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;2. &amp;nbsp; &amp;nbsp; &amp;nbsp; the valid test case quantity on hand is 9,999&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;3. &amp;nbsp; &amp;nbsp; &amp;nbsp; the invalid test case quantity on hand is -10,000 and&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;4. &amp;nbsp; &amp;nbsp; &amp;nbsp; the invalid test case quantity on hand is 10,000&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;You may combine valid classes wherever possible, just as you did with equivalencepartitioning, and, once again, you may not combine invalid classes. Donï¿½t forget to consider output conditions as well. In our inventory example the output conditions generate the following test cases:&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;1. &amp;nbsp; &amp;nbsp; &amp;nbsp; the valid test case total quantity on hand is 0&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;2. &amp;nbsp; &amp;nbsp; &amp;nbsp; the valid test case total quantity on hand is 999,999&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;3. &amp;nbsp; &amp;nbsp; &amp;nbsp; the invalid test case total quantity on hand is -1 and&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;4. &amp;nbsp; &amp;nbsp; &amp;nbsp; the invalid test case total quantity on hand is 1,000,000&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;2. A similar rule applies where the, condition states that the number of values must lie within a certain range select two valid test cases, one for each boundary of the range, and two invalid test cases, one just below and one just above the acceptable range.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;3. Design tests that highlight the first and last records in an input or output file.&amp;nbsp;&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;4.Look for any other extreme input or output conditions, and generate a test for each of them.&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;center data-iceapc=&quot;4&quot; style=&quot;color: #222222; font-family: Verdana; font-size: 12px; line-height: 17.25px;&quot;&gt;
&lt;div data-iceapc=&quot;3&quot; id=&quot;google_ads_div_OneStopTesting-MidBanner_ad_wrapper&quot;&gt;
&lt;div data-iceapc=&quot;2&quot; id=&quot;google_ads_div_OneStopTesting-MidBanner_ad_container&quot; style=&quot;display: inline-block;&quot;&gt;
&lt;ins data-iceapc=&quot;1&quot; style=&quot;border: 0px; display: inline-table; height: 60px; position: relative; width: 468px;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;

&lt;/center&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/7347738229437944508/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-do-boundary-value-analysis.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/7347738229437944508'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/7347738229437944508'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-do-boundary-value-analysis.html' title='How to do Boundary Value Analysis'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-6378725069260884587</id><published>2013-07-15T10:20:00.003-07:00</published><updated>2013-07-21T19:22:45.029-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Integration Testing"/><title type='text'>Integration Testing</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Integration Testing&lt;/i&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
&lt;i style=&quot;color: magenta;&quot;&gt;&amp;nbsp;Integration testing is designed to test the structure and the architecture of the software and determine whether all software components interface properly. Integration testing does not verify that the system is functionally correct, only that it performs as designed.&lt;/i&gt;&lt;/h4&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;It is the process of identifying errors introduced by combining individual program unit tested modules. Integration Testing should not begin until all units are known to perform according to the unit specifications. It can start with testing several logical units or can incorporate all units in a single integration test.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Below are the four steps of creating integration test cases:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Step 1 - Identify Unit Interfaces: The developer of each program unit identifies and documents the unit’s interfaces for the following unit operations:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Responding to queries from terminals for information&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Managing transaction data entered for processing&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Obtaining, updating, or creating transactions on computer files&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Passing or receiving information from other logical processing units&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Sending messages to terminals&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Providing the results of processing to some output device or unit&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Step 2 - Reconcile Interfaces for Completeness: The information needed for the integration test template is collected for all program units in the software being tested. Whenever one unit interfaces with another, those interfaces are reconciled. For example, if program unit A transmits data to program unit B, program unit B should indicate that it has received that input from program unit A. Interfaces not reconciled are examined before integration tests are executed.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Step 3 - Create Integration Test Conditions: One or more test conditions are prepared for integrating each program unit. After the condition is created, the number of the test condition is documented in the test template.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Step 4 - Evaluate the Completeness of Integration Test Conditions: The following list of questions will help guide evaluation of the completeness of integration test conditions recorded on the integration testing template. This list can also help determine whether test conditions created for the integration process are complete.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Q1. Is an integration test developed for each of the following external inquiries:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Record test?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- File test?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Search test?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Match/merge test?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Attributes test?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Stress test?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Control test?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Q2. Are all interfaces between modules validated so that the output of one is recorded as input to another?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Q3. If file test transactions are developed, do the modules interface with all those indicated files?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Q4. Is the processing of each unit validated before integration testing?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Q5. Do all unit developers agree that integration test conditions are adequate to test each unit’s interfaces?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Q6. Are all software units included in integration testing?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Q7. Are all files used by the software being tested included in integration testing?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Q8. Are all business transactions associated with the software being tested included in integration testing?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Q9. Are all terminal functions incorporated in the software being tested included in integration testing?&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;

&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/6378725069260884587/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/integration-testing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/6378725069260884587'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/6378725069260884587'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/integration-testing.html' title='Integration Testing'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-3741191615902276056</id><published>2013-07-15T10:17:00.000-07:00</published><updated>2013-07-21T19:25:35.088-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Equivalence Partitioning"/><title type='text'>Equivalence Partitioning</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Equivalence Partitioning&lt;/i&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h4 style=&quot;text-align: left;&quot;&gt;
&lt;i style=&quot;color: magenta;&quot;&gt;Equivalence partitioning is a test case selection technique for black box testing. In this method, testers identify various classes of input conditions called as equivalence classes. These classes are identified such that each member of the class causes the same kind of processing and output to occur.&lt;/i&gt;&lt;/h4&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Basically, a class is a set of input conditions that are similar in nature for a system. In this test case selection technique, it is assumed that if the system will handle one case in the class erroneously, it would handle all cases erroneously.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;This technique drastically cuts down the number of test cases required to test a system reasonably. Using this technique, one can found the most errors with the smallest number of test cases.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;To use equivalence partitioning, you will need to:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Determining conditions to be tested&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Defining and designing tests&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Determining conditions to be tested:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;All valid input data for a given condition are likely to go through the same process.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Invalid data can go through various processes and need to be evaluated more carefully. For example:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Treat the blank entry differently than an incorrect entry.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Treat a value differently if it is less than or greater than a range of values.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;If there are multiple error conditions within a function, one error may override the other, which means that the subordinate error does not get tested unless the other value is valid.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Defining and Designing Test Cases:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;First, include valid tests and include as many valid tests as possible in one test case.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;For invalid input, include only one test in a test case in order to isolate the error.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Example: In a company, first three digits of all employee IDs, the minimum number is 333 and the maximum number is 444. For the fourth and fifth digits, the minimum number is 11 and the maximum number is 99.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;So, for the first three digits the various test conditions can be&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;a. = or &amp;gt; 333 and = or &amp;lt;&amp;gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;b. &amp;lt;&amp;gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;c. &amp;gt; 444, (invalid input, above the range)&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;d. Blank, (invalid input, below the range).&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;And for the third and fourth digits the various test conditions can be&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;e. = or &amp;gt; 11 and = or &amp;lt;&amp;gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;f. &amp;lt;&amp;gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;g. &amp;gt; 99, (invalid input, above the range)&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;h. blank, (invalid input, below the range)&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Now, while using equivalence partitioning; only one value that represents each of the eight equivalence classes needs to be tested.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Now, after identifying the tests, you will need to create test cases to test each equivalence class. Create one test case for the valid input conditions and identify separate test cases for each invalid input.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;As a black box tester, you might not know the manner in which the programmer has coded the error handling. So, you will need to create separate tests for each invalid input, to avoid masking the result in the event one error takes priority over another.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Thus, based on the test conditions, there can be seven test cases:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Test case for a and e - (both are valid)&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Test case for b and e - (only the first one is invalid)&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Test case for c and e - (only the first one is invalid)&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Test case for d and e - (only the first one is invalid)&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Test case for a and f - (only the second one is invalid)&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Test case for a and g - (only the second one is invalid)&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Test case for a and h - (only the second one is invalid)&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;ul style=&quot;background-color: white; font-size: 14px; line-height: 1.4; list-style: none; margin: 0.5em 0px; padding: 0px 2.5em; text-align: left;&quot;&gt;
&lt;/ul&gt;
&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;

&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/3741191615902276056/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/equivalence-partitioning.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/3741191615902276056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/3741191615902276056'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/equivalence-partitioning.html' title='Equivalence Partitioning'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-2557177930084224332</id><published>2013-07-14T02:17:00.004-07:00</published><updated>2013-07-21T22:48:05.957-07:00</updated><title type='text'>How to decide when software is ready to release</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;How to decide when software is ready to release&lt;/i&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Deciding when software is ready to release is a difficult. You have pressure from all sides to release perfect software, with added features. Below are some common facts:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- The engineers have said that the code was complete months ago, but are still making code changes.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- Sales people promised the software to major accounts months ago and are making commitments for the next release.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- The product manager wants a few more features added and you want to release a zero defect software.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Having no specific release criteria, many organizations wait for the manager to say &quot;Release it&quot;, not knowing when or why the decision was made at that time. In other cases, there is a general group consensus to just push the software out the door because the tired and stressed group wants to move out from the seemingly never ending cycles.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;You can never take all of the stress out of releasing good software, but by planning ahead and setting up a good defect tracking repository, predetermining acceptable bug counts, properly testing the software and effectively triaging the defects you can always know the current state of the software, but most importantly know when the software is ready to ship.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Defect Tracking Repository:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;The most common as well as important tool to determine the state of the software is the defect tracking repository. The repository must be able to provide information required for the triage process. The repository must include the following info:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- The expected results of the testers test&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- The steps to recreating the defect&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- The version in which the defect was found&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- The module in which the defect was found&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- The severity of the defect&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- A short descriptive name for the defect&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- A description of the defect&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- The actual results if the testers test&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- Resolution notes&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;The project team should be able to query the database and gather information such as defect counts at various severity levels, and module levels, descriptions of the defects and steps to reproduce them. The repository becomes the archive for the project and it becomes important that correct and complete information be entered in order to use this information for later projects as a planning tool.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Predetermined Acceptable Bug Counts: The goal of releasing software with no defects cannot be achieved given the limited time and resources so, in the preliminary planning of the project exit criteria must be set up. The exit criteria should then be translated into the test plan outline, which should include acceptable bug count levels in order to ship the software.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;The exact acceptable bug count level is not some magic number that will insure a successful product, but more a target goal that the group can use to see that they are moving forward toward a common goal. An acceptable bug count statement may look like this:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- Showstoppers: There may not be any&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- High: There may not be any&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- Medium: There may not be any that have a high probability of appearance to the customer&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- Low: There may be a minimal amount in specified core areas and all other areas may have any amount.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;In order for the entire group to know the state of the software at all timesit would be preferable to produce a weekly build grading process. The idea is that each week the build would be treated as if it were the software to be shipped and given a grade. The weekly grade keeps the team current on the software state and the team can see the software progressively improve.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;This quantitative method takes a lot of the guesswork out of the equation.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Proper Testing: The key to shipping quality software is finding and fixing all defects. The testers responsibility becomes finding the defects and properly reporting them. In order for the testers to find the defects the lead tester must set up in the test plan outline, the specific stages of testing to ensure that the process is organized and covers all aspects of the software. The test plan may contain the following 7 phases:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- Test Case and Test Suite Planning&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- Unit Testing&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- Regression Testing&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- System Testing&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- Regression testing&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- Performance Testing&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;- Release Candidate Testing&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;The goal is to turn up as many defects as early as possible in order to make the fixes easier on the engineers and to provide ample time for regression testing since every time the code is altered there is a greater risk of creating more defects.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;As important as finding the defect, the tester must be able to correctly report it in the repository. This becomes extremely important in large projects where the defect counts may rise in the thousands.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Effective Triage:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;The Test Lead and Engineer must sit down regularly to evaluate the reported defects and drive the process forward in the most efficient manner for the engineers as well as the testers. Much of the decision making here is based on queries from the defect repository, which shows the importance of the accuracy and completeness of the repository.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;The creation of a &quot;Hot List&quot; which is a list of important bugs is a great tool to create. This can be done in an plain Excel sheet, which identifies the most important defects, their module and a brief description. This list is great to use in triage to identify the defect action items for the upcoming week.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Defects that prevent further testing in a certain area must be given precedence and the engineers can assist in the risk analysis of future modules to assist the testers in their test case development. In the determination of what to fix next generally it is advantageous to group and fix defects relating to the same module at the same time even though there may be other important defects in other modules. Grouping of defects assists the engineers finish a module and move on.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Shipping quality software is not an easy task but by being organized from the start of the project the ship date and defect counts don&#39;t have to be a &quot;gut feeling&quot;. The project must have a Defect Tracking Repository that must be maintained and updated continually with correct and complete information. The Repository is used as the main tool for an effective triage process and in conjunction with the Test Plan Outline that must be createdat the start of the project describing in detail the exit criteria to ship the software.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Please note the entire process rests on proper testing and the use of proper test planning which is what uncovers the defects. If you do not uncover the defects the users of the software will.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;Thus, by following the above described process it is possible to know the state of the software at any time so that the entire team knows the goal, sees the progress and knows when the software is ready to release.&lt;/i&gt;&lt;/span&gt; &lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.bloghints.com&quot;&gt;&lt;img src=&quot;http://www.bloghints.com/images/button.gif&quot; alt=&quot;Blog Directory&quot; width=&quot;80&quot; height=&quot;15&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/2557177930084224332/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-decide-when-software-is-ready-to.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/2557177930084224332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/2557177930084224332'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-decide-when-software-is-ready-to.html' title='How to decide when software is ready to release'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-3511218260346689353</id><published>2013-07-14T02:08:00.001-07:00</published><updated>2013-07-21T19:24:20.319-07:00</updated><title type='text'>Test Readiness</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;/div&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Test Readiness&lt;/i&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Before starting the actual testing, it is important to check whether the system / project / environment is ready for testing. This is called as Test Readiness Review. It is better to do it with a checklist.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Below is a sample Test Readiness Review Checklist:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;1. Whether all the tests are conducted according to the Test Plan / Cases ?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;2. Are all problems / defects translated into Defect Reports ?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;3. Are all the Defect Reports satisfactorily resolved ?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;4. Is the log of the tests conducted available?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;5. Is unit testing complete in all respects?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;6. Is Integration testing complete ?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;7. Is all the relevant documentation baselined ?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;8. Is all work products products baselined?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;9. Is the test plan baselined ?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;10. Does the test plan contain the strategy / procedure to conduct the system test ?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;11. Are baselined test designs and test cases ready?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;12. Is unit/integrated test software ready ?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;13. Is the user manual ready?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;14. Is the installation procedure documented ?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;15. Are all the product requirements implemented?&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;16. Is the list of known problems available? Is there any &quot;workaround&quot; procedure for the known bugs ?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;17. Are test environment needs met for Hardware, code, procedures, scripts, test tools etc.?&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;18. List of exceptions in test software and test procedures and their work around if any?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;19. Is the test reporting tool is available?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;20. Are the designers educated on Test reporting tool?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;21. Is any standard methodology / tool used and is appropriate to the type of the project?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;22. Is the criteria for regression testing defined? Has the regression testing been done accordingly?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;23. Is the source code available from the client for performing regression testing complete in all respects?&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;24. Is the source code freezed for testing?&lt;/i&gt;&lt;/span&gt;
&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/3511218260346689353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/test-readiness.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/3511218260346689353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/3511218260346689353'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/test-readiness.html' title='Test Readiness'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-927909534253986352</id><published>2013-07-14T02:06:00.000-07:00</published><updated>2013-07-21T19:30:35.028-07:00</updated><title type='text'>Testing Team Organizing</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Testing Team Organizing&lt;/i&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;i style=&quot;color: magenta;&quot;&gt;The people component includes human resource allocations and the required skill sets. The test team should comprise the highest-caliber personnel possible. They are usually extremely busy because their talents put them in great demand, and it therefore becomes vital to build the best case possible for using these individuals for test purposes. A test team leader and test team need to have the right skills and experience, and be motivated to work on the project. Ideally, they should be professional quality assurance specialists but can represent the executive sponsor, users, technical operations, database administration, computer center, independent parties, etc. The latter is particularly useful during final system and acceptance testing. In any event, they should not represent the development team, for they may not be as unbiased as an outside party. This is not to say that developers shouldn&#39;t test. For they should unit and function test their code extensively before handing it over to the test team.&lt;/i&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;There are two areas of responsibility in testing:&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;1. Testing the application, which is the responsibility of the test team&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;2. The overall testing processes, which is handled by the test manager.&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;The test manager directs one or more testers, is the interface between quality assurance and the development organization, and manages the overall testing effort. Responsibilities include:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Setting up the test objectives&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Defining test resources&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Creating test procedures&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Developing and maintaining the test plan&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Designing test cases&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Designing and executing automated testing tool scripts&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Test case development&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Providing test status&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Writing reports&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Defining the roles of the team members&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Managing the test resources&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Defining standards and procedures&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Ensuring quality of the test process&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Training the team members&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Maintaining test statistics and metrics&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;The test team must be a set of team players and have the following responsibilities:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Execute test cases according to the plan&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Evaluate the test results&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Report errors&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Design and execute automated testing tool scripts&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Recommend application improvements&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;• Record defects&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;The main function of a team member is to test the application and report defects to the development team by documenting them in a defect tracking system. Once the development team corrects the defects, the test team re executes the tests which discovered the original defects.&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;It should be pointed out that the roles of the test manager and team members are not mutually exclusive. Some of the team leader’s responsibilities are shared with the team member and visa versa.&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;The basis for allocating dedicated testing resources is the scope of the functionality and the development time frame, e.g., a medium development project will require more testing resources than a small one. If project A of medium complexity requires a testing team of 5, project B with twice the scope would require 10 testers (given the same resources).&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Another rule of thumb is that the testing costs approach 25% of the total budget. Since the total project cost is known, the testing effort can be calculated and translated to tester headcount.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;The best estimate is a combination of the project scope, test team skill levels, and project history. A good measure of required testing resources for a particular project is the histories of multiple projects, i.e., testing resource levels and performance compared to similar projects.&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; height=&quot;15&quot; alt=&quot;Software blogs&quot;&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;

&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/927909534253986352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/testing-team-organizing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/927909534253986352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/927909534253986352'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/testing-team-organizing.html' title='Testing Team Organizing'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-5190328317557013745</id><published>2013-07-14T02:03:00.002-07:00</published><updated>2013-07-21T19:25:58.662-07:00</updated><title type='text'>Software Testing Principles</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;SoftwareTesting Principles&lt;/i&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;Below are some basic Software Testing Principles:&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- A necessary part of a test case is a definition of the expected output or result.&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- A programmer should avoid attempting to test his or her own program.&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- A programming organization should not test its own programs.&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Thoroughly inspect the results of each test.&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Test cases must be written for input conditions that are invalid and unexpected, as well as for those that are valid and expected.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Examining a program to see if it does not do what it is supposed to do is only half the battle; the other half is seeing whether the program does what it is not supposed to do.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Avoid throwaway test cases unless the program is truly a throwaway program.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Do not plan a testing effort under the tacit assumption that no errors will be found.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- The probability of the existence of more errors in a section of a program is proportional to the number of errors already found in that section.&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;i&gt;- Software Testing is an extremely creative and intellectually challenging task.&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;
&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;

&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/5190328317557013745/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/software-testing-principles.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/5190328317557013745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/5190328317557013745'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/software-testing-principles.html' title='Software Testing Principles'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-1460866471747940051</id><published>2013-07-13T23:22:00.003-07:00</published><updated>2013-07-21T19:26:18.056-07:00</updated><title type='text'>Test Planning</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;color: magenta;&quot;&gt;Test Planning&lt;/span&gt;&lt;/h2&gt;
&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;b&gt;&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;i&gt;&lt;b&gt;The quality of Software Testing effort depends on the quality of quality of 
Software Testing Planning. Software Testing Planning is very critical and 
important part of Software Testing Process. &lt;br /&gt;&lt;br /&gt;Below are some questions and 
suggestions for Software Test Planning:&lt;br /&gt;&lt;br /&gt;- Have you planned for an overall 
testing schedule and the personnel required, and associated training 
requirements? &lt;br /&gt;&lt;br /&gt;- Have the test team members been given assignments? 
&lt;br /&gt;&lt;br /&gt;- Have you established test plans and test procedures for &lt;br /&gt;&lt;br /&gt;1. 
Module testing&lt;br /&gt;2. Integration testing&lt;br /&gt;3. System testing&lt;br /&gt;4. Acceptance 
testing&lt;br /&gt;&lt;br /&gt;- Have you designed at least one black-box test case for each 
system function? &lt;br /&gt;&lt;br /&gt;- Have you designed test cases for verifying quality 
objectives/factors (e.g. reliability, maintainability, etc.)? &lt;br /&gt;&lt;br /&gt;- Have you 
designed test cases for verifying resource objectives? &lt;br /&gt;&lt;br /&gt;- Have you 
defined test cases for performance tests, boundary tests, and usability tests? 
&lt;br /&gt;&lt;br /&gt;- Have you designed test cases for stress tests (intentional attempts to 
break system)? &lt;br /&gt;&lt;br /&gt;- Have you designed test cases with special input values 
(e.g. empty files)? &lt;br /&gt;&lt;br /&gt;- Have you designed test cases with default input 
values? &lt;br /&gt;&lt;br /&gt;- Have you described how traceability of testing to requirements 
is to be demonstrated (e.g. references to the specified functions and 
requirements)? &lt;br /&gt;&lt;br /&gt;- Do all test cases agree with the specification of the 
function or requirement to be tested? &lt;br /&gt;&lt;br /&gt;- Have you sufficiently considered 
error cases? Have you designed test cases for invalid and unexpected input 
conditions as well as valid conditions? &lt;br /&gt;&lt;br /&gt;- Have you defined test cases 
for white-box-testing (structural tests)? &lt;br /&gt;&lt;br /&gt;- Have you stated the level of 
coverage to be achieved by structural tests? &lt;br /&gt;&lt;br /&gt;- Have you unambiguously 
provided test input data and expected test results or expected messages for each 
test case? &lt;br /&gt;&lt;br /&gt;- Have you documented the purpose of and the capability 
demonstrated by each test case? &lt;br /&gt;&lt;br /&gt;- Is it possible to meet and to measure 
all test objectives defined (e.g. test coverage)? &lt;br /&gt;&lt;br /&gt;- Have you defined the 
test environment and tools needed for executing the software test? &lt;br /&gt;&lt;br /&gt;- 
Have you described the hardware configuration an resources needed to implement 
the designed test cases? &lt;br /&gt;&lt;br /&gt;- Have you described the software configuration 
needed to implement the designed test cases? &lt;br /&gt;&lt;br /&gt;- Have you described the 
way in which tests are to be recorded? &lt;br /&gt;&lt;br /&gt;- Have you defined criteria for 
evaluating the test results? &lt;br /&gt;&lt;br /&gt;- Have you determined the criteria on which 
the completion of the test will be judged? &lt;br /&gt;&lt;br /&gt;- Have you considered 
requirements for regression testing?&lt;/b&gt;&lt;/i&gt;&lt;/span&gt; &lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/1460866471747940051/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/test-planning.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/1460866471747940051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/1460866471747940051'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/test-planning.html' title='Test Planning'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-5001294490959968188</id><published>2013-07-13T23:18:00.002-07:00</published><updated>2013-07-21T19:30:14.886-07:00</updated><title type='text'>Test Specification</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Test Specification&lt;/span&gt;&lt;/i&gt;&lt;/h2&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;Test Specification&lt;/b&gt; – It is a detailed summary 
of what scenarios will be tested, how they will be tested, how often they will 
be tested, and so on and so forth, for a given feature. Trying to include all 
Editor Features or all Window Management Features into one Test Specification 
would make it too large to effectively read.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;However, a Test Plan is a collection of all test specifications 
for a given area. The Test Plan contains a high-level overview of what is tested 
for the given feature area. &lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;b&gt;&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Contents of a Test Specification:&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;Revision History -&lt;/b&gt; This section contain 
information like Who created the test specification? When was it created? When 
was the last time it was updated? &lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;Feature Description –&lt;/b&gt; A brief description of 
what area is being tested.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;What is tested? –&lt;/b&gt; An overview of what 
scenarios are tested.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;What is not tested? -&lt;/b&gt; Are there any areas that 
are not being tested. There can be several reasons like... being covered by 
different people or any test limitations etc. If so, include this information as 
well.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;Nightly Test Cases –&lt;/b&gt; A list of the test cases 
and high-level description of what is tested whenever a new build becomes 
available. &lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;Breakout of Major Test Areas -&lt;/b&gt; It is the most 
interesting part of the test specification where testers arrange test cases 
according to what they are testing. &lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;Specific Functionality Tests –&lt;/b&gt; Tests to verify 
the feature is working according to the design specification. This area also 
includes verifying error conditions.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;Security tests –&lt;/b&gt; Any tests that are related to 
security. &lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;Accessibility Tests –&lt;/b&gt; Any tests that are 
related to accessibility. &lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;Performance Tests -&lt;/b&gt; This section includes 
verifying any performance requirements for your feature.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;Localization / Globalization -&lt;/b&gt; tests to ensure 
you’re meeting your product’s Local and International requirements.&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Please note that your Test Specification document should be in 
such a manner that should prioritize the test case easily like nightly test 
cases, weekly test cases and full test pass etc:&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;
&lt;/span&gt;&lt;/i&gt;
&lt;li&gt;&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;Nightly -&lt;/b&gt; Must run whenever a new build is available.
&lt;/span&gt;&lt;/i&gt;
&lt;/li&gt;
&lt;li&gt;&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;Weekly -&lt;/b&gt; Other major functionality tests run once every 
three or four builds.
&lt;/span&gt;&lt;/i&gt;
&lt;/li&gt;
&lt;li&gt;&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;b&gt;Lower priority -&lt;/b&gt; Run once every major coding milestone&lt;/span&gt;&lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;

&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/5001294490959968188/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/test-specification.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/5001294490959968188'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/5001294490959968188'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/test-specification.html' title='Test Specification'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-1585982442705846611</id><published>2013-07-13T23:15:00.001-07:00</published><updated>2013-07-21T19:27:04.801-07:00</updated><title type='text'>Software Testing Estimation</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Software Testing Estimation&lt;/span&gt;&lt;/i&gt;&lt;/h2&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta; font-family: Verdana, sans-serif;&quot;&gt;Software Testing estimation process is one of the most difficult and critical 
activity. When say that one project will be completed in a particluar time at a 
particular cost, then it must happen. If it does not happen, it may result in 
peer&#39;s comments and senior management’s warnings to being fired depending on the 
reasons and seriousness of the failure.&lt;br /&gt;&lt;br /&gt;Here are a few rules for 
effective software testing estimation:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;- Estimation must be based 
on previous projects:&lt;/b&gt; All estimation should be based on previous 
projects.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;- Estimation must be recorded:&lt;/b&gt; All decisions 
should be recorded. It is very important because if requirements change for any 
reason, the records would help the testing team to estimate 
again.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;- Estimation shall be always based on the software 
requirements:&lt;/b&gt; All estimation should be based on what would be tested. 
The software requirements shall be read and understood by the testing team as 
well as development team. Without the testing participation, no serious 
estimation can be considered.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;- Estimation must be verified. All 
estimation should be verified:&lt;/b&gt; Two spreadsheets can be created for 
recording the estimations. At the end, compare both the estimations. If the 
estimation has any deviation from the recorded ones, then a re-estimation should 
be made.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;- Estimation must be supported by tools:&lt;/b&gt; Tools 
such as spreadsheet containing metrics calculates automatically the costs and 
duration for each testing phase. Also, a document containing sections such as: 
cost table, risks, and free notes should be created. Showing this document to 
customer can help the customer to decide which kind of test he 
needs.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;- Estimation shall be based on expert judgment:&lt;/b&gt; 
The experinced resources can easily make estimate that how long it would take 
for testing.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Classifiy the requirements in the following 
categories:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Critical:&lt;/b&gt; The development team has 
little knowledge in how to implement it.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;High:&lt;/b&gt; The 
development team has good knowledge in how to implement it but it is not an easy 
task.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Normal:&lt;/b&gt; The development team has good knowledge in 
how to implement&lt;/span&gt;&lt;/i&gt;&lt;!-- Begin MyNewBlog tracking code --&gt;
&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img alt=&quot;Software blogs&quot; border=&quot;0&quot; height=&quot;15&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; /&gt;&lt;/a&gt;
&lt;!-- End MyNewBlog tracking code --&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/1585982442705846611/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/software-testing-estimation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/1585982442705846611'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/1585982442705846611'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/software-testing-estimation.html' title='Software Testing Estimation'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-4199488086527265845</id><published>2013-07-13T23:06:00.000-07:00</published><updated>2013-07-21T19:58:43.611-07:00</updated><title type='text'>Test Strategy</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Test Strategy&lt;/span&gt;&lt;/i&gt;&lt;/h2&gt;
&lt;i&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;In continuation to my previous post on Test Strategy, I&#39;m here describing it in more details.&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Test strategy can be defined as a high level management method that confirms adequate confidence in the software product being tested, while ensuring that the cost efforts and timelines are all within acceptable limits.&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Test strategy can be of different levels:&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Enterprise-wide test strategy to set up a test group for the entire organization.&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Application or the product test strategy to set up the test requirements of a software product for its entire life&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Project level test strategy to set up test plans for a single project life cycle.&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;A good test strategy should:&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Define the objectives, timelines and approach for the testing effort&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;List various testing activities and define roles &amp;amp; responsibilities&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Identify and coordinate the test environment and data requirements before the starting of testing phase&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Communicate the test plans to stakeholders and obtain buy-in from business clients&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Proactively minimize fires during the testing phase&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Decisions to be made in test strategy:&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;When should the testing be stopped?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;What should be testing?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;What can remain untested?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Further, the following three types of risks can be considered while making a test strategy:&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;1. Development related risks include:&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Inefficiently controlled project timelines.&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Complexity of the code&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Less skilled programmers&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Defects in existing code&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Problems in team co-ordination&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Lack of reviews and configuration controlLack of specifications&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;2. Testing related risks include:&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Lack of domain knowledge&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Lack of testing and platform skills&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Lack of test bed and test data&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Lack of sufficient time&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;3. Production related risks include:&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Dynamic frequency of usage&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Complexity of user interface&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;High business impact of the function&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Test strategies generally acknowledge that&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;The earlier a bug is detected, the cheaper it is to fix.&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Splitting the testing into smaller parts and then aggregating, ensures a quicker debug and fix cycle&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Bugs found in critical functions mean more time to fix&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Six steps for developing a test strategy:&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Determine the objective and scope of the testing&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Identify the types of tests required&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Based on the external and internal risks, add, modify or delete processes.&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Plan the environment, test bed, test data and other infrastructure&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Plan strategy for managing changes, defects and timeline variations.&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Decide both the in-process and the post process metrics to match the objectives.&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;While creating test strategy for maintenance projects, following aspects needs to be considered:&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;How much longer is the software being supported and is it worth-while strategizing to improve the testing of this software?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Is it worthwhile to incrementally automate the testing of the existing code and functionality?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;How much of the old functionality should we test to give us the confidence that the new code has not corrupted the old code?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Should we have same set of people support the testing of multiple software maintenance projects?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;What analysis can be applied on the current defect database that will help us improve the development itself?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;However, for creating the test strategy of product development, following aspects needs to be considered:&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;How much longer is the product going to last? This includes multiple versions etc. since test case and artifacts can continue to be used across versions.&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Would automation be worth considering?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;How much testing should we do per release (minor, patch, major, etc.)&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Do we have a risk based test plan that will allow releases to be made earlier than planned?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Is the development cycle iterative? Should the test cycle follow that?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;As per IEEE software engineering standards, the Test Strategy document should answer the following aspects:&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;1. Objective and scope of testing&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;What is the business objective of testing?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;What are the quality goals to be met by the testing effort?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;To what extent will each application be tested?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;What external systems will not be tested?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;What systems and components need to be tested?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;2. Types of testing&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Different phases of the testing that are required.&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Different types of testing&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Test Coverage&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;3. Testing approach&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Definition of testing process life cycle&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Creation of testing related templates, checklists and guidelines&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Methodology for test development and execution&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Specification of test environment setup&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Planning for test execution cycles&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;4. Test Environment specification&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Hardware and software requirements&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Test data creation, database requirements and setup&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Configuration management, maintenance of test bed and build management&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;5. Test Automation&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Criteria and feasibility of test automation&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Test tool identification&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Test automation strategy (effort, timelines etc.)&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;6. Roles and Responsibilities / Escalation mechanism&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Testing team organization and reporting structure&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Different roles as a part of testing activities and their corresponding responsibilities&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Who to escalate to and when?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;7. Defect Management&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Categorization of defects based on criticality and priority&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Definition of a workflow or the disposition of defects&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Techniques and tools for tracking of defects.&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;8. Communication and status reporting&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Status meetings for communication of testing status&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Format and content of different status reports&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Periodicity of each status report&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Distribution list for each report&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;9. Risks and mitigation plans&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Identification of all testing related risks, their impact and exposure&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Plan for mitigation and managing these risks&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;10. Configuration management&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;List of testing artefacts under version control&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Tools and techniques for configuration management&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;11. Change management&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Plan for managing requirement changes&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Models for assessing impact of changes on testing&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;Process for keeping test artifacts in sync with development artifacts&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;12. Testing metrics&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;What metrics are to be collected? Do they match the strategic objectives?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;What will be the techniques for collection of metrics?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;What tools will be employed to gather and analyze metrics?&lt;/span&gt;&lt;span style=&quot;color: magenta;&quot;&gt;What process improvements are planned based on these metrics?&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;
&lt;ul style=&quot;background-color: white; font-size: 14px; line-height: 1.4; list-style: none; margin: 0.5em 0px; padding: 0px 2.5em;&quot;&gt;
&lt;/ul&gt;&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; height=&quot;15&quot; alt=&quot;Software blogs&quot;&gt;&lt;/a&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/4199488086527265845/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/test-strategy_13.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/4199488086527265845'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/4199488086527265845'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/test-strategy_13.html' title='Test Strategy'/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2283362142687523552.post-216286478438630248</id><published>2013-07-09T10:05:00.003-07:00</published><updated>2013-07-21T19:59:00.185-07:00</updated><title type='text'>How to improve Software testing process </title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h2 style=&quot;text-align: left;&quot;&gt;
How to improve Software testing process &lt;/h2&gt;
&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Improving the testing process is not the responsibility of test team only. It 
is a joint effort of Development &amp;amp; Testing team and Management to understand 
the health of existing testing process and identify the necessary measures to 
improve it.&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;a href=&quot;http://www.blogger.com/null&quot; name=&quot;more&quot;&gt;&lt;/a&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
&lt;span style=&quot;color: black;&quot;&gt;&lt;/span&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;&lt;img alt=&quot;How to Improve Software Testing Process&quot; border=&quot;0&quot; height=&quot;73&quot; src=&quot;http://lh3.ggpht.com/_ansP04Rcsso/TXTyE9zfq_I/AAAAAAAAAVE/RtGehTAzyFM/image%5B11%5D.png?imgmax=800&quot; style=&quot;background-image: none; border-width: 0px; display: block; float: none; margin: 2px auto 5px; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;How to Improve Software Testing Process&quot; width=&quot;240&quot; /&gt;&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Points for Leads, Test Managers, Project Managers and Delivery Heads:&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
&lt;ol&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;/span&gt;&lt;/em&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Identify all the platforms on which application will be run. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Improve requirements management process – business &amp;amp; functional 
requirements should be well documented. Involve testing team in requirement 
gathering phase. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Create a document / list of all possible scenarios before writing test 
cases. Include it into test planning. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Measure testing effort on periodical basis – New Bug Rate, Effort Variance, 
Schedule Variance, Test Case Effectiveness, Residual defect density etc. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Keep developers away from test environments. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Post mortem meetings must be planned after every release. Both testing &amp;amp; 
development teams should participate in these meetings. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Keep track of bug fixing time taken by development team. Keep informed about 
the time remaining for regression testing to relevant stack holders. Tracking of 
this point by relevant stack holders is very critical as it may result in low 
quality releases. &lt;/span&gt;&lt;/em&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Points for Software Testers:&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;
&lt;ol&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;
&lt;/span&gt;&lt;/em&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Try to understand the logic behind the screen and try to break that logic. 
Understand the internal workings of code from developers during lunch time or 
tea breaks. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Analyse test results thoroughly. Try to identify root cause from functional 
perspective. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Break the application into smaller functional modules. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;First write test cases for valid conditions, then cover invalid conditions. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;While writing test cases, refer design documents as well. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;As soon as you complete the test case writing, share test case with 
development team. It could result in time saving. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;During test case writing phase, group test cases using impact analysis. It 
will help in effective regression testing in less time. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;If you are new tester for a old development team, have a look on old bug 
reports of modules / project where development worked previously. Generally 
developers, repeat similar mistakes. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Test the application for both implicit as well as explicit requirements. 
&lt;/span&gt;&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;&lt;em&gt;&lt;span style=&quot;font-family: Verdana, sans-serif;&quot;&gt;Never communicate bugs verbally. For any critical / show stopper bugs, have 
an immediate discussion &amp;amp; then document via mail and share it to relevant 
stack holders.&lt;/span&gt;&lt;/em&gt; &lt;/li&gt;
&lt;/ol&gt;&lt;a href=&quot;http://www.mynewblog.com/software/&quot; title=&quot;Software blogs&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://www.mynewblog.com/tracker.php?id=169533&quot; width=&quot;80&quot; height=&quot;15&quot; alt=&quot;Software blogs&quot;&gt;&lt;/a&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://verification-validation.blogspot.com/feeds/216286478438630248/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-improve-software-testing-process.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/216286478438630248'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2283362142687523552/posts/default/216286478438630248'/><link rel='alternate' type='text/html' href='http://verification-validation.blogspot.com/2013/07/how-to-improve-software-testing-process.html' title='How to improve Software testing process '/><author><name>DINESH</name><uri>http://www.blogger.com/profile/13889942783177088130</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh3.ggpht.com/_ansP04Rcsso/TXTyE9zfq_I/AAAAAAAAAVE/RtGehTAzyFM/s72-c/image%5B11%5D.png?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry></feed>