<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Object Mentor Blog: CppUTest Recent Experiences</title>
    <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description></description>
    <item>
      <title>CppUTest Recent Experiences</title>
      <description>&lt;h2&gt;Background&lt;/h2&gt;
Mid last year I ported several exercises from Java to C++. At that time, I used CppUTest 1.x and Boost 1.38. Finally, half a year later, it was time to actually brush the dust off those examples and make sure they still work.&lt;p/&gt;

	&lt;p&gt;They didn&amp;#8217;t. Bit rot. Or user error. Not sure which.&lt;/p&gt;


	&lt;p&gt;&lt;b&gt;Bit rot&lt;/b&gt;: bits decay to the point where things start failing. Compiled programs&lt;i&gt; &lt;b&gt;do&lt;/b&gt;&lt;/i&gt; have a half-life.&lt;p/&gt;
&lt;b&gt;User Error&lt;/b&gt;: maybe things were not checked in as clean as I remember. Though I suspect they were, I don&amp;#8217;t really have any evidence to prove it, so I have to leave that option available.&lt;/p&gt;


	&lt;p&gt;To add to the mix, I decided to upgrade to CppUTest 2.x and to the latest version of the Boost library (1.41). I think that broke many several things. But the fixes were simple, once I figured out what I needed to do.&lt;/p&gt;


&lt;h2&gt;The Fixes&lt;/h2&gt;
What follows are the three things I needed to do to get CppUTest 2.0, Boost and those exercises playing nicely together.&lt;p/&gt;

&lt;h3&gt;Header File Include Order&lt;/h3&gt;
First, I used to have the header file for the CppUTest Test Harness, &lt;CppUTest/TestHarness.h&gt; included first. It seems logical, but it caused all sorts of problems with CppUTest 2. That header file, includes a file, that ultimately includes something that uses macros to redefine new and delete. This is done so the testing framework can do simple memory tracking, which lets you know if your unit tests contains memory leaks.&lt;p/&gt;

	&lt;p&gt;I like this feature. Sure, it&amp;#8217;s simple and light-weight, but it coves a lot of ground for a little hassle. The hassle? Include that header file last, instead of first. Problem Solved. Well at least the code compiles without hundreds of errors.&lt;p/&gt;&lt;/p&gt;


&lt;h3&gt;Boost Shared Pointer&lt;/h3&gt;
Rather than hold pointers directly, I used the boost shared pointer class for a light-weight way to manage memory allocation. This is something I would do on a real project as well.&lt;p/&gt;

	&lt;p&gt;Somehow, the updated memory tracking in CppUTest 2.0 found something I had missed when using CppUTest 1.0.&lt;/p&gt;


	&lt;p&gt;I need to be able to control the date, so I have a simple date factory. By default, the date factory, when asked for the current date, returns the current date. Several unit tests want to simulate different dates. E.g., check out a book on one day, return it 14 days later. To do that, I manipulate the date factory (a form of dependency injection). This works fine, but by default the date factory is allocated using new.&lt;p/&gt;&lt;/p&gt;


When I replaced the existing date factory, I was not resetting it after the test. It turns out that this did not break anything because I was &amp;#8220;lucky&amp;#8221;. (Actually unlucky, I like things to&lt;i&gt; &lt;b&gt;fail fast&lt;/b&gt;&lt;/i&gt;.) CppUTest caught this in the form of not deallocating memory correctly:
	&lt;ul&gt;
	&lt;li&gt;I want to replace behavior&lt;/li&gt;
		&lt;li&gt;To do so I used polymorphism&lt;/li&gt;
		&lt;li&gt;Polymorphism in C++ requires virtual methods (please don&amp;#8217;t correct me by suggesting that overloading is polymorphism, that is an opinion with which I strongly disagree)&lt;/li&gt;
		&lt;li&gt;Methods are only virtually dispatched via references or pointers&lt;/li&gt;
		&lt;li&gt;References cannot be changed, so I must use a pointer if I want a substitutable factory, which I wanted&lt;/li&gt;
		&lt;li&gt;Pointers suggest dynamic memory allocation&lt;/li&gt;
	&lt;/ul&gt;


	&lt;p&gt;To fix this, I updated the setup method to store the original date factory in an attribute and then I updated the teardown method to restore the original date factory from that attribute. That I missed this suggests that my test suite is not adequate. I did not fix this problem for no good reason other than I was porting existing tests, so I left it as is. For the context it will not cause a problem. Pragmatic or lazy? You decide.&lt;p/&gt;&lt;/p&gt;


&lt;h3&gt;One Time Allocation&lt;/h3&gt;
Here is a simple utility that uses Boost dates and regex:
&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_cpp "&gt;ptime DateUtil::dateFromString(const string &amp;amp;dateString) {
  boost::regex e(&amp;quot;^(\\d{1,2})/(\\d{1,2})/(\\d{4})$&amp;quot;);
  string replace(&amp;quot;\\3/\\1/\\2&amp;quot;);
  string isoDate = boost::regex_replace(dateString, e, replace, boost::match_default | boost::format_sed);
  return ptime(date(from_string(isoDate)));
}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;Now this is somewhat simplistic code. So be it, it serves the purposes of the exercise. I can think of ways to fix this, but there&amp;#8217;s an underling issue that exists if you use the regex library from Boost.&lt;p/&gt;&lt;/p&gt;


	&lt;p&gt;When you use the library, it allocates (in this example) 10 blocks of memory. If you read the documentation (I did), it&amp;#8217;s making space for its internal state machine for regex evaluation. This is done once and then kept around.&lt;p/&gt;&lt;/p&gt;


So what&amp;#8217;s the problem? Well, when I run my tests, the first test that happens to exercise this block of code reports some memory allocation issues:
&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_default "&gt;c:\projects\cppppp\dependencyinversionprinciple\dependencyinversionprinciple\pat
rongatewaytest.cpp:34: error: Failure in TEST(PatronGateway, AddAFew)
        Memory leak(s) found.
Leak size: 1120 Allocated at: &amp;lt;unknown&amp;gt; and line: 0. Type: &amp;quot;new&amp;quot; Content: &amp;quot;
?&amp;quot;
Leak size: 16 Allocated at: &amp;lt;unknown&amp;gt; and line: 0. Type: &amp;quot;new&amp;quot; Content: ?a&amp;quot;
Leak size: 20 Allocated at: &amp;lt;unknown&amp;gt; and line: 0. Type: &amp;quot;new&amp;quot; Content: &amp;quot;&#234;&#224;4&amp;quot;
Leak size: 52 Allocated at: &amp;lt;unknown&amp;gt; and line: 0. Type: &amp;quot;new&amp;quot; Content: &#228;4&amp;quot;
Leak size: 4096 Allocated at: &amp;lt;unknown&amp;gt; and line: 0. Type: &amp;quot;new&amp;quot; Content: &amp;quot;&amp;quot;
Leak size: 52 Allocated at: &amp;lt;unknown&amp;gt; and line: 0. Type: &amp;quot;new&amp;quot; Content: &amp;quot;&#234;&#226;4&amp;quot;
Leak size: 20 Allocated at: &amp;lt;unknown&amp;gt; and line: 0. Type: &amp;quot;new&amp;quot; Content: ~4&amp;quot;
Leak size: 32 Allocated at: &amp;lt;unknown&amp;gt; and line: 0. Type: &amp;quot;new&amp;quot; Content: &amp;quot;?&#224;4&amp;quot;
Leak size: 32 Allocated at: &amp;lt;unknown&amp;gt; and line: 0. Type: &amp;quot;new&amp;quot; Content: &amp;quot;h~4&amp;quot;
Leak size: 80 Allocated at: &amp;lt;unknown&amp;gt; and line: 0. Type: &amp;quot;new&amp;quot; Content: &amp;quot;&#234;&#228;4&amp;quot;
Total number of leaks:  10&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;This is a false positive. This is a one-time allocation and a side-effect of C++ memory allocation and static initialization.&lt;p/&gt;&lt;/p&gt;


	&lt;p&gt;There is a way to &amp;#8220;fix&amp;#8221; this. You use a command line option, -r, to tell the command line test runner to run the tests twice. If the allocation problem happens the first time but not the second time, then the tests are &amp;#8220;OK&amp;#8221;.&lt;p/&gt;&lt;/p&gt;


I didn&amp;#8217;t want to do this. 
	&lt;ul&gt;
	&lt;li&gt;The tests do take some time to run (30 seconds maybe, but still that doubles the time)&lt;/li&gt;
		&lt;li&gt;The output is ugly&lt;/li&gt;
		&lt;li&gt;It&amp;#8217;s off topic for what the exercise is trying to accomplish&lt;/li&gt;
	&lt;/ul&gt;


I tried a few different options but ultimately I went with simply calling that method before using the command line test runner. So I changed my main from:
&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_cpp "&gt;#include &amp;lt;CppUTest/CommandLineTestRunner.h&amp;gt;

int main(int argc, char **argv) {
  return CommandLineTestRunner::RunAllTests(argc, argv);
}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

To this:
&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_cpp "&gt;#include &amp;quot;DateUtil.h&amp;quot;
#include &amp;lt;CppUTest/CommandLineTestRunner.h&amp;gt;

/** ************************************************************
    The boost regex library allocates several blocks of memory
    for its internal state machine. That memory is listed as a 
    memory leak in the first test that happens to use code that
    uses the boost regext library. To avoid having to run the
    tests twice using the -r option, we instead simply force
    this one-time allocation before starting test execution.
    *********************************************************** **/

void forceBoostRegexOneTimeAllocation() {
  DateUtil::dateFromString(&amp;quot;1/1/1980&amp;quot;);
}

int main(int argc, char **argv) {
  forceBoostRegexOneTimeAllocation();
  return CommandLineTestRunner::RunAllTests(argc, argv);
}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;Since this one-time allocation happens before any of the tests run, it is no longer reported as a problem by CppUTest.&lt;/p&gt;


	&lt;p&gt;Before I introduced this &amp;#8220;fix&amp;#8221;, I spent quite a bit of time to verify that each of the 10 allocations were done by one of the three lines dealing with regex code in my DateUtil class. I used a conditional breakpoint and looked at the stack trace. (I know, using the debugger is considered a code smell, but not all smells are bad.)&lt;/p&gt;


&lt;h3&gt;Conclusion&lt;/h3&gt;
I still like CppUTest. I&amp;#8217;ve used a few C++ unit testing tools but there are several I have not tried. I don&amp;#8217;t have enough face-time with C++ for this to be an issue. I am not terribly comfortable with the order of includes sensitivity. I&amp;#8217;m not sure if that would scale.&lt;p/&gt;

	&lt;p&gt;I do appreciate the assistance with memory checking, though dealing with false positives can be a bit of a hassle. There was another technique, that of expressing the number of allocations. But in this case, that simply deferred the reporting of memory leaks to after test execution. In any case, I do like this. I&amp;#8217;m not sure how well it would scale so it leaves me a bit uneasy.&lt;p/&gt;&lt;/p&gt;


	&lt;p&gt;If you happen to be using these tools, hope this helps. If not, and you are using C++, what can you say about your experiences with using this or other unit testing tools?&lt;/p&gt;</description>
      <pubDate>Thu, 04 Feb 2010 13:42:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:3b1ab465-7276-4c72-9361-9103092a7ca5</guid>
      <author>Brett Schuchert</author>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences</link>
      <category>Schuchert's Scattered Synapses </category>
      <category>TDD</category>
      <category>c</category>
      <category>boost</category>
      <category>memory</category>
      <category>allocation</category>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by Get Air Conditioner</title>
      <description>&lt;p&gt;I was very happy that I found this &lt;a href="http://www.getairconditioner.com" rel="nofollow"&gt;website&lt;/a&gt;. I want to to thank you for this &lt;a href="http://www.getairconditioner.com/evaporation-coolers/" rel="nofollow"&gt;excellent&lt;/a&gt; information!! I absolutely enjoyed every bit of it and I have bookmarked your site to check out the new stuff you post later on&lt;/p&gt;</description>
      <pubDate>Tue, 07 Feb 2012 07:58:15 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:55d0241b-9f9d-4836-9768-a4064d7f7464</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-202118</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by iPhone SMS to Mac Backup</title>
      <description>&lt;p&gt;A good Experiences  that can give all programmers good example.&lt;/p&gt;</description>
      <pubDate>Sat, 14 Jan 2012 21:26:34 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:6dd93453-0b35-4a88-a647-bf4096df2989</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-197881</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by  Polo Ralph Lauren Pas Cher</title>
      <description>&lt;p&gt;Hi, Brilliant, just I have learnt, what I needed to know. thank you for writing such an excellent article.Please keep it up.&lt;/p&gt;</description>
      <pubDate>Thu, 12 Jan 2012 21:10:59 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:30406893-595b-4b29-a978-2f3c287eaaa9</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-197558</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by nikeheelsdunk</title>
      <description>&lt;br&gt;&lt;br&gt;A first aid kit is a must for small and accidental injuries. Of course it&amp;#8217;s unavoidable to scrape your arm on rough bark or falling off the tree stand, at least there&amp;#8217;s an available remedy in that box. Always make sure to dispose of the &lt;a href="http://www.nikewomenheels.net/" rel="nofollow"&gt;Nike heels for women&lt;/a&gt; material properly.&lt;br&gt;&lt;br&gt;Other equipment such as rifles or bows must be kept unloaded. Most States will commission a guide for hunters to carry the ammunition and probably help the hunter carry some of the necessary equipment. It&amp;#8217;s not like having a &lt;a href="http://www.jordanheelswomen.net/" rel="nofollow"&gt;Jordan Heels For Women&lt;/a&gt; caddy carrying the bag, but he is there to ensure the safety of the hunter as well as the forest.&lt;br&gt;&lt;br&gt;Never drink anything that may compromise or deteriorate your physical or mental faculties.</description>
      <pubDate>Mon, 26 Dec 2011 02:48:27 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:5b0e2506-79f7-4009-ad7a-8e2656e78f8b</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-192163</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by Indonesia Furniture</title>
      <description>&lt;p&gt;Enjoy your post &amp;#8230; thanks &amp;#8230;&lt;/p&gt;</description>
      <pubDate>Tue, 29 Nov 2011 17:25:29 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:69d172d1-8a24-40bc-a8f3-d139b070a7e9</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-179742</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by ??? ???</title>
      <description>&lt;p&gt;sateen, silks, cashmere, lace, PU leather, fur, lambs and so on.&lt;/p&gt;</description>
      <pubDate>Tue, 29 Nov 2011 00:40:49 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:55e222a6-f473-4e34-a0d2-1370591e83bf</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-179527</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by chy</title>
      <description>&lt;p&gt;&lt;a href="http://www.burberrybuy.org" rel="nofollow"&gt;Burberry Outlet&lt;/a&gt; September big AD movie has just been published, they cooperates with models Amber Anderson, Matthew Whitehouse, Edie Campbell and Rob Pryor. The model Matthew Whitehouse appears in Burberry AD movie for the second time. The theme is Burberry Nude Color, which derived from the sexy elements of Burberry New Arrival Women Perfume in the nice 1960s.in &lt;a href="http://www.burberryoutletonline1879.uk.com" rel="nofollow"&gt;Burberry UK&lt;/a&gt; Prorsum September AD movie, men and women models wear in nude color together, it seems that nude element will become the new fashion focus in this year. The nude color lambs coats wore by models, looks so elegant and exquisite. Burberry offers platform for designers to show literary or artistic talent as always, and combine itself with British artists, weather and music.This season, Burberry Nude Collection is iconic Women Capsule Collection, the clothing are?&lt;a href="http://www.burberrysalesmall.com" rel="nofollow"&gt;Burberry Sale &lt;/a&gt;, the other kinds include Burberry Sunglasses, Burberry Watches, Burberry Bags, Burberry Shoes. The materials includes satins, sateen, silks, cashmere, lace, PU leather, fur, lambs and so on.&lt;/p&gt;</description>
      <pubDate>Wed, 02 Nov 2011 20:32:34 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:02ec0c26-ced9-449d-8862-47a74d287002</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-166889</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by christian louboutin</title>
      <description>&lt;p&gt;Great post, please write more about this, and I like it. I really enjoy reading your blog popular distributed: a good article waiting for you!
Greate post,please write more about this,and I like it,I really enjoy reading you blog  popular distributed: a good article waiting for you!&lt;/p&gt;</description>
      <pubDate>Mon, 31 Oct 2011 08:19:32 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:42476711-2e86-4226-b0dc-9cc891cad61e</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-166248</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by moncler piumini</title>
      <description>&lt;p&gt;buy moncler online sale,cheap moncler online&lt;/p&gt;</description>
      <pubDate>Fri, 28 Oct 2011 11:06:48 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:759e7ffc-2b85-4602-bcc3-d40296ebb0d3</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-165195</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by australia luxe collective</title>
      <description>&lt;p&gt;may be you want to love luxe boots.&lt;/p&gt;</description>
      <pubDate>Fri, 28 Oct 2011 11:05:32 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:bec58276-52bf-42e9-9845-e5fc4b168a40</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-165194</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by mts Convertidor</title>
      <description>&lt;p&gt;afternoon. &lt;a href="http://www.mtsconverter.es" rel="nofollow"&gt;MTS Convertidor&lt;/a&gt;
Just after 4 p.m. a plane wrote the words &amp;#8220;Last Chance&amp;#8221; in the air. The message was preceded by&amp;#8221;Lost Our Lease&amp;#8221; and followed by  &amp;#8220;Now Open.&amp;#8221;&lt;a href="http://www.mtsconverter.es/mts-converter-for-mac.htm" rel="nofollow"&gt;MTS  Mac&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Tue, 11 Oct 2011 00:54:30 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:c2e03bc9-2aa2-401a-9950-a8f9777a6892</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-154028</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by Louboutins</title>
      <description>&lt;p&gt;asd dfsg
0d5fg 6d3333222&lt;/p&gt;</description>
      <pubDate>Mon, 10 Oct 2011 22:46:26 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:207bc041-fb8b-4529-8ef9-8e1775c0b676</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-153909</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by moncler</title>
      <description>&lt;p&gt;asdfa +gs8dfg+sd8fgsd&lt;/p&gt;</description>
      <pubDate>Mon, 10 Oct 2011 22:42:20 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:06fac241-ed35-4e4e-b31e-b90c2f07694c</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-153891</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by Christian</title>
      <description>&lt;p&gt;as sfs+9d8+gs df+9gsd&lt;/p&gt;</description>
      <pubDate>Mon, 10 Oct 2011 22:39:23 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:585991c3-ddbc-4c6a-a777-e498530b6c40</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-153873</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by http://www.ghalay.com</title>
      <description>&lt;p&gt;&lt;a href="http://www.ghalay.comI" rel="nofollow"&gt;http://www.ghalay.comI&lt;/a&gt; am defintly going to add this page to my favorites. thanks!&lt;/p&gt;</description>
      <pubDate>Tue, 27 Sep 2011 15:30:51 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:be32943d-4783-4d06-b66f-e8533e703ee5</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-146230</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by onlinesolutionproviders</title>
      <description>&lt;p&gt;I think you may have screwed up with the &#8220;One&#8221; app. It doesn&#8217;t seem to be the one you describe in the text below it.&lt;/p&gt;


	&lt;p&gt;&lt;a href="http://www.onlinesolutionproviders.com" rel="nofollow"&gt; &lt;a href="http://www.onlinesolutionproviders.com" rel="nofollow"&gt;http://www.onlinesolutionproviders.com&lt;/a&gt; &lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Fri, 23 Sep 2011 01:19:04 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:b20d904a-7be8-4986-abe6-60e6bdf8a066</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-144671</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by leather designer jackets</title>
      <description>&lt;p&gt;Very nice thanks a lot for sharing this great info
&lt;a href="http://www.celebswear.co.uk" rel="nofollow"&gt;leather designer jackets&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Mon, 19 Sep 2011 03:02:58 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:822a5104-4ab6-4bcd-95ea-9b3ab0a3e9fe</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-142749</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by Clarence Parker</title>
      <description>&lt;p&gt;The article is wonderfully written and the way
the points were sent across is very understandable. I loved it.&lt;/p&gt;</description>
      <pubDate>Tue, 30 Aug 2011 20:57:28 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:8913e190-e9fd-42bb-8ad6-d8cbfcd8350f</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-134486</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by Health Care</title>
      <description>&lt;p&gt;There was another technique, that of expressing the number of allocations. But in this case, that simply deferred the reporting of memory leaks to after test execution. In any case, I do like this.&lt;/p&gt;</description>
      <pubDate>Sun, 28 Aug 2011 10:07:35 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:638582c9-750a-4491-a525-9a9383a79a68</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-133472</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by beats by dre store</title>
      <description>&lt;p&gt;I&#8217;m impressed. Minimum code needed junit Outputs compatible with XML is easy to create and permutations Type Tests parameters.&lt;a href="http://www.drdrebeatsheadphones-australia.com" rel="nofollow"&gt;high quality headphones&lt;/a&gt;
&lt;a href="http://www.drdrebeatsheadphones-australia.com" rel="nofollow"&gt;new design headphones&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Tue, 23 Aug 2011 03:43:29 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:f765728c-b87f-4883-8ba5-90fd523462a1</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-131703</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by Belstaff Jackets</title>
      <description>&lt;p&gt;another upcoming &lt;a href="http://www.belstaff-outlet-jackets.com/" rel="nofollow"&gt;Belstaff Jackets&lt;/a&gt; shoes is Force IV which is under the &lt;a href="http://www.belstaff-outlet-jackets.com/" rel="nofollow"&gt;Belstaff Outlet&lt;/a&gt; and &lt;a href="http://www.belstaff-outlet-jackets.com/" rel="nofollow"&gt;Belstaff Factory&lt;/a&gt;. Many of the American &lt;a href="http://www.belstaff-outlet-jackets.com/" rel="nofollow"&gt;Belstaff Leather&lt;/a&gt; , &lt;a href="http://www.belstaff-outlet-jackets.com/belstaff-jackets-c-1.html" rel="nofollow"&gt;Belstaff Jackets&lt;/a&gt; media named this double tide &lt;a href="http://www.belstaff-outlet-jackets.com/belstaff-jackets-men-c-1_7.html" rel="nofollow"&gt;Belstaff Jackets Men&lt;/a&gt; defined as the most fashion as so far all the most handsome &lt;a href="http://www.belstaff-outlet-jackets.com/belstaff-jackets-women-c-1_8.html" rel="nofollow"&gt;Belstaff Jackets Women&lt;/a&gt; shoes. Though they are haven&#8217;t put out for &lt;a href="http://www.belstaff-outlet-jackets.com/belstaff-blouson-c-2.html" rel="nofollow"&gt;Belstaff Blouson&lt;/a&gt;, &lt;a href="http://www.belstaff-outlet-jackets.com/belstaff-coat-parka-c-6.html" rel="nofollow"&gt;Belstaff Coat Parka&lt;/a&gt; shoes fans, but there is someone wearing this pair of &lt;a href="http://www.belstaff-outlet-jackets.com/belstaff-bags-c-4.html" rel="nofollow"&gt;Belstaff Bags&lt;/a&gt; in the street, he is the top of &lt;a href="http://www.belstaff-outlet-jackets.com/belstaff-sunglasses-c-5.html" rel="nofollow"&gt;Belstaff Sunglasses&lt;/a&gt; brand spokesman&amp;#8212;carmelo Anthony&lt;/p&gt;</description>
      <pubDate>Tue, 23 Aug 2011 01:22:12 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:19142bb7-cd34-487f-8c70-6ca70581b6e2</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-131521</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by Round Rock Door Companies</title>
      <description>&lt;p&gt;nice article, I&#8217;ll think I&#8217;ll save that code to my usb memory stick for later use.&lt;/p&gt;</description>
      <pubDate>Tue, 02 Aug 2011 09:48:41 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:fa73940d-bdf1-4fa5-a061-5ad61480ea54</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-123103</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by reizen naar india</title>
      <description>&lt;p&gt;During the last year proved that C + + Multiple frames and finished with Unit Testing Google Test (gtest). After using this half year I&amp;#8217;m impressed. Minimum code needed junit Outputs compatible with XML is easy to create and permutations Type Tests parameters.&lt;/p&gt;</description>
      <pubDate>Thu, 28 Jul 2011 12:50:23 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:72fe8a10-0da2-4095-a7a2-4ae4abd09f28</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-121417</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by Austin Roofing Contractor</title>
      <description>&lt;p&gt;I was very happy that I found this website. I want to to thank you for this excellent information!! I absolutely enjoyed every bit of it and I have bookmarked your site to check out the new stuff you post later on&lt;/p&gt;</description>
      <pubDate>Tue, 26 Jul 2011 14:49:37 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:c108053f-a8d6-41d8-bc44-643124c78cf9</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-120509</link>
    </item>
    <item>
      <title>"CppUTest Recent Experiences" by ????? ??????</title>
      <description>&lt;p&gt;??&lt;/p&gt;</description>
      <pubDate>Mon, 25 Jul 2011 14:05:14 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:04e4846b-3658-4771-adac-bf4012683d2d</guid>
      <link>http://blog.objectmentor.com/articles/2010/02/04/cpputest-recent-experiences#comment-120076</link>
    </item>
  </channel>
</rss>

