<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Software design and embedded system tools. &#187; testing</title>
	<atom:link href="http://embedsoftdev.com/tag/testing/feed/" rel="self" type="application/rss+xml" />
	<link>http://embedsoftdev.com</link>
	<description>Good information for software design</description>
	<lastBuildDate>Tue, 17 Jan 2012 19:13:31 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Test driven development (test first)</title>
		<link>http://embedsoftdev.com/software-engineering/test-driven-development-test-first/</link>
		<comments>http://embedsoftdev.com/software-engineering/test-driven-development-test-first/#comments</comments>
		<pubDate>Sat, 21 Aug 2010 01:45:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[test]]></category>
		<category><![CDATA[test driven development]]></category>
		<category><![CDATA[test first]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://embedsoftdev.com/?p=670</guid>
		<description><![CDATA[Test driven development Test Driven Development is one of test method that specializes in the test repetition. The reason for doing this is to test codes repeatedly with hopes of making a given software better and more effective. The Test-Driven Design has several steps that must be followed before the test is successfully completed. The [...]
Related posts:<ol>
<li><a href='http://embedsoftdev.com/software-engineering/agile-software-development-model-ii/' rel='bookmark' title='Agile software development model II.'>Agile software development model II.</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><strong>Test driven development </strong></p>
<p><a href="http://embedsoftdev.com/wp-content/uploads/2010/08/SCHEMA-Client-IT-Services-Provider-01.jpg"><img src="http://embedsoftdev.com/wp-content/uploads/2010/08/SCHEMA-Client-IT-Services-Provider-01-300x274.jpg" alt="software engineering Test driven development (test first)" title="SCHEMA Client IT Services Provider 01" width="300" height="274" class="aligncenter size-medium wp-image-691" /></a></p>
<p>Test Driven Development is one of test method that specializes in the test repetition.<br />
The reason for doing this is to test codes repeatedly with hopes of making a given software better and more effective.<br />
 The Test-Driven Design has several steps that must be followed before the test is successfully completed.<br />
The first step requires writing a test (so it&#8217;s also called <strong>test first</strong>). There has to be a sample diagram or flowchart before any other actions can be taken.<br />
However, when written test finish , it&#8217;s not mean to success the TDD process because it is written before the physical test (real test) is performed.<br />
The person writing the test must know precise specification of  the features being created as well as everything required for creating test suite.<br />
In most cases the writer obtains the information about the feature required to create the test by using use cases or user stories of the software that will be run the test on.<br />
After gather all useful information then source code is written. Next, every test must be ran to written code to determine that the written code is fail in the test suite<br />
or not.<br />
At this point, it should pass and if all the tests pass then it’s time to proceed to the final step. The final step is all about cleaning up the code.<br />
This is done by re-running the test cases in search for defects and so on . There has to be certainty that there is no damage being found to any other software functionality<br />
as a result of the new software can be released.</p>
<p><strong>Advantages of test first</strong></p>
<p>1. When you continue to do the test first then you will get a lot of test cases. After that when you want to restructure the system, you can do it easily<br />
and don&#8217;t have to fear about the bugs that may happen because when you finish restructure the system , your new system may not pass some written<br />
test cases, so at this point you can retrace to modify the written test cases and then try to validate the new system to pass to modified test cases.<br />
(If you don&#8217;t have test cases , after complete restructure your system for 2 or 3 months , the unknown bugs may occur because the restructured system<br />
was not tested. At this time you have to fix bugs but it&#8217;s so difficult to fix them due to you may forget about wherever in the function or files that you used<br />
to modified source code. In my opinion, if your system is very complex , your certainly have to write intensive test cases )</p>
<p>2.With test first you have to write test documents before write the code , this way will help the programmer or developer to plan before they begin to write<br />
code (they have to write the code to pass the test documents). As a result your entire code will look better and you will get the software that have a good<br />
structure. It also help you to reduce runtime error or unexpected bugs (so cost to fix the bugs is also reduced too).</p>
<p>Test first is differ from unit test as follow<br />
                1. Test first is done before writing source code but Unit test is done after finish writing the code.<br />
                2. In test first , you don&#8217;t need to look at source code to write the tests but in unit test , you must use the written code to do unit test.<br />
                3. Unit test help you to ensure that your written function or piece of code is work or not but test first help you to ensure that<br />
entire code in the project work well or not.</p>
<p>Thank you,<br />
       Jitkasem</p>
<p>Related posts:<ol>
<li><a href='http://embedsoftdev.com/software-engineering/agile-software-development-model-ii/' rel='bookmark' title='Agile software development model II.'>Agile software development model II.</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://embedsoftdev.com/software-engineering/test-driven-development-test-first/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Performance Testing and Regression Testing</title>
		<link>http://embedsoftdev.com/software-engineering/performance-testing-and-regression-testing/</link>
		<comments>http://embedsoftdev.com/software-engineering/performance-testing-and-regression-testing/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 13:29:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[ad hoc]]></category>
		<category><![CDATA[ad hoc testing]]></category>
		<category><![CDATA[performance testing]]></category>
		<category><![CDATA[performance testing and regression testing]]></category>
		<category><![CDATA[performing regression testing]]></category>
		<category><![CDATA[regression]]></category>
		<category><![CDATA[regression testing]]></category>
		<category><![CDATA[testing]]></category>
		<category><![CDATA[unit testing]]></category>

		<guid isPermaLink="false">http://embedsoftdev.com/uncategorized/409/</guid>
		<description><![CDATA[Performance Testing and Regression Testing Software testing or Testing is an examination conducted to present the stakeholders with data regarding the quality of the service or product under test. This type of software testing as well provides in insight on the independent views and objectives of the software to permit the business to understand all [...]
Related posts:<ol>
<li><a href='http://embedsoftdev.com/software-engineering/software-testing-part-i/' rel='bookmark' title='Software testing part I.'>Software testing part I.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/software-testing-ii-white-box-and-black-box-testing/' rel='bookmark' title='Software testing part II (White Box and Black Box testing)'>Software testing part II (White Box and Black Box testing)</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/user-acceptance-test/' rel='bookmark' title='User Acceptance Testing.'>User Acceptance Testing.</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><center><strong>Performance Testing and Regression Testing</strong></center></p>
<p>Software testing or Testing is an examination conducted to present the stakeholders with data regarding the quality of the service or product under test. This type of software testing as well provides in insight on the independent views and objectives of the software to permit the business to understand all the risks involved during the implementation of the software.<br />
Based on the testing method employed, Software testing can be put into practice at any point of time in the development process. Although, most of the efforts for testing occur after the requirements are defined and the process for coding has been completed.</p>
<p>This article describes two types of testing methodologies.</p>
<p><strong>1. Performance Testing</strong><br />
Performance testing is performed to determine how quick a system or sub-system executes under a particular amount of workload. It can also provide to verify and validate other quality traits of the system, such as reliability, scalability and resource usage.</p>
<p>In the field of Software Engineering, performance testing comes under the testing category which is carried out to how fast a particular aspect of the system under observation performs, given a fixed amount of workload. This sort of testing is a subset of Performance Engineering (up-and-coming computer science practices build to get performance into the architecture and design of a system, prior to the actual effort of coding). There are various purposes which performance testing can serve:<br />
It can compare given two systems and finds out which one is performing better<br />
It can demonstrate whether or not the system meets the required performance criteria.<br />
It can calculate which parts of the system under observation cause the system to perform badly.</p>
<p><strong>2. Regression Testing</strong><br />
This type of testing is any software testing which seeks to find out software errors by partly re-testing a modified program. The intention of this type of testing is to provide a kind of assurance that no additional errors were added during the process of fixing the existing problems. Regression testing is generally used to proficiently examine the system by systematically choosing the appropriate suite of tests which are required to sufficiently cove all of the affected changes.<br />
Widespread methods of regression testing comprise of rerunning earlier run tests and scrutinizing whether previously fixed faults have re-emerged. One of the chief reasons for performing regression testing is that it&#8217;s often tremendously difficult for a programmer to outline out how a change in one part of the software will reverberate in other parts of the software.</p>
<p><strong>Ad hoc testing</strong><br />
This term is commonly used to represent software testing without any documentation or planning. The tests are made to run only once, unless a defect is discovered. This type of testing is more of a part of exploratory testing. Here, the tester seeks to find errors by any means that seems appropriate to him/her.</p>
<p><strong>Unit Testing</strong><br />
This type of testing is a software verification and validation method where a programmer tests if individual units of system are fit for utilization. A unit is the least testable part of an application. In procedural programming, a unit might be an individual procedure or function.</p>
<p><strong>Advantages</strong></p>
<p>The advantage of performing Performance and Regression testing are:<br />
<em>Reusable:</em> Can reuse tests on diverse versions of an application, even if the user interface alters<br />
<em>Repeatable:</em> Can check how the software responds under repeated execution of the identical operations.<br />
<em>Programmable:</em> Can program complicated tests that bring out concealed information from the application.<br />
<em>Cost Reduction:</em> Cost is reduced since the amounts of resources for regression test are reduced.<br />
<em>Reliable: </em>Tests carry out precisely the equivalent operations each time they are run, thereby eradicating human error.<br />
<em>Comprehensive:</em> Can build a suite of tests that wraps every feature in the application.<br />
<em>Better Quality Software:</em> Can run additional tests in fewer time with less resources<br />
<em>Fast: </em>Automated Tools run tests considerably faster as compared to the human users.</p>
<h4>Incoming search terms for the article:</h4><ul><li><a href="http://embedsoftdev.com/software-engineering/performance-testing-and-regression-testing/" title="performance testing in embedded systems">performance testing in embedded systems</a></li><li><a href="http://embedsoftdev.com/software-engineering/performance-testing-and-regression-testing/" title="performance engineering blogspot">performance engineering blogspot</a></li><li><a href="http://embedsoftdev.com/software-engineering/performance-testing-and-regression-testing/" title="software development system testing and regression testing">software development system testing and regression testing</a></li><li><a href="http://embedsoftdev.com/software-engineering/performance-testing-and-regression-testing/" title="performance testing embedded systems">performance testing embedded systems</a></li><li><a href="http://embedsoftdev.com/software-engineering/performance-testing-and-regression-testing/" title="regression testing and performance testing">regression testing and performance testing</a></li><li><a href="http://embedsoftdev.com/software-engineering/performance-testing-and-regression-testing/" title="regression testing vs performance testing">regression testing vs performance testing</a></li></ul><p>Related posts:<ol>
<li><a href='http://embedsoftdev.com/software-engineering/software-testing-part-i/' rel='bookmark' title='Software testing part I.'>Software testing part I.</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/software-testing-ii-white-box-and-black-box-testing/' rel='bookmark' title='Software testing part II (White Box and Black Box testing)'>Software testing part II (White Box and Black Box testing)</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/user-acceptance-test/' rel='bookmark' title='User Acceptance Testing.'>User Acceptance Testing.</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://embedsoftdev.com/software-engineering/performance-testing-and-regression-testing/feed/</wfw:commentRss>
		<slash:comments>49</slash:comments>
		</item>
		<item>
		<title>Software testing part I.</title>
		<link>http://embedsoftdev.com/software-engineering/software-testing-part-i/</link>
		<comments>http://embedsoftdev.com/software-engineering/software-testing-part-i/#comments</comments>
		<pubDate>Wed, 12 Aug 2009 07:29:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[acceptance test]]></category>
		<category><![CDATA[integration test]]></category>
		<category><![CDATA[software testing]]></category>
		<category><![CDATA[system test]]></category>
		<category><![CDATA[testing]]></category>
		<category><![CDATA[unit test]]></category>

		<guid isPermaLink="false">http://embedsoftdev.com/?p=104</guid>
		<description><![CDATA[There are no commercial software released to the market without testing. Testing is an important process in software development.The big or well-known software company place importance on software testing equal to software implementation. At present there are many type of software testing method but I summarize the widely used testing method as following&#8230; 1.Unit test [...]
Related posts:<ol>
<li><a href='http://embedsoftdev.com/software-engineering/software-testing-ii-white-box-and-black-box-testing/' rel='bookmark' title='Software testing part II (White Box and Black Box testing)'>Software testing part II (White Box and Black Box testing)</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/stubs-and-drivers-testing/' rel='bookmark' title='Stubs and Drivers testing'>Stubs and Drivers testing</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/performance-testing-and-regression-testing/' rel='bookmark' title='Performance Testing and Regression Testing'>Performance Testing and Regression Testing</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>      There are no commercial software released to the market without testing.<br />
Testing is an important process in software development.The big or<br />
well-known software company place importance on software testing equal to<br />
software implementation.<br />
      At present there are many type of software testing method but I summarize the<br />
widely used testing method as following&#8230;</p>
<p><strong>1.Unit test </strong><br />
      Unit test is the testing functional<br />
(Or testing in  detail of each function in the system) to ensure<br />
that each individual function in the system can work well.<br />
Unit testing is very important in software development because<br />
it is the method for finding the functional problems (It can decrease<br />
the time in finding bugs in the posterior process).<br />
<strong>2.Integration test</strong><br />
      Integration test is the testing that take each unit to<br />
combine altogether and then test the coherence between each unit to<br />
ensure that the communication between each unit in the system can<br />
be done correctly.<br />
<strong>3.System test</strong><br />
      System test is the testing of the whole system to ensure that<br />
the totally work-flow of the system is correct.It is also<br />
an important test that have to do in software development process<br />
(Normally system test is done as the last test of all<br />
testing procedure).<br />
<strong>4.Acceptance Test</strong><br />
      Acceptance test is the testing of customer or user who will<br />
use the developed software.It is the test for satisfaction of the<br />
user or customer.This testing is done after System test.</p>
<p>     The important testing that you must emphasize on them are<br />
Unit testing and Integration testing because many defect or bugs<br />
can be found by these two testing method.</p>
<p>     Testing is not necessary to be done by tester but developer<br />
can also do the testing.Normally the Unit testing is done by<br />
developer because the majority of this testing use the test case<br />
that depend on the implementation, so nobody can do this testing<br />
better than developer.However the real tester have a responsibility<br />
for doing the Integration test and System test because&#8230; </p>
<p>    &#8211; These two kinds of testing must do in long time.</p>
<p>    &#8211; To prevent the bias if the developer is also the tester at the<br />
      same time.(The developer who write the code maybe<br />
      rather sure that the code they wrote is correct and will<br />
      ignore some minor part of code that have to test)</p>
<p>    &#8211; The real tester has more time to design the test document<br />
      and test case. He/She must know clearly in the target system<br />
      that will be tested,so He/She can do the testing better than<br />
      developer.</p>
<p>      This is part I of software testing story.In the next part (part II)<br />
I will write about black box and white box testing,test first method and<br />
how to design the test plan.</p>
<p>Thank you very much,<br />
      Jitkasem Pintaya.</p>
<p>Related posts:<ol>
<li><a href='http://embedsoftdev.com/software-engineering/software-testing-ii-white-box-and-black-box-testing/' rel='bookmark' title='Software testing part II (White Box and Black Box testing)'>Software testing part II (White Box and Black Box testing)</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/stubs-and-drivers-testing/' rel='bookmark' title='Stubs and Drivers testing'>Stubs and Drivers testing</a></li>
<li><a href='http://embedsoftdev.com/software-engineering/performance-testing-and-regression-testing/' rel='bookmark' title='Performance Testing and Regression Testing'>Performance Testing and Regression Testing</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://embedsoftdev.com/software-engineering/software-testing-part-i/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

