Skip to content

Your Unit Tests Lie to You

February 17, 2009 by Janusz Marcin Gorycki

Photo (c) Janusz Gorycki

Achtung: A Bunch of Obvious Statements Below

Continuing the grand tradition of writing "controversial" posts, let's take a look at unit tests - which for some folks seem to be the new gospel, the best thing since sliced bread, the cure to all our ailing.

Well - the truth is that, in the agile community unit tests seem to be a little bit overrated. Or, to be more precise - they are often incorrectly used as a "silver bullet" substitute for the tedious, labor-intensive, time-consuming, boring and un-gratifying, manual integration and system tests. They quite often, and wrongly, become the one and only QA process in the project. Let me tell you - these hope of getting rid of integration and system testing are false and maintaining them is extremely dangerous.

The Purpose of Unit Testing

Unit tests are a good tool for two purposes:

  • they are a fast and simple verification vehicle, allowing you to test your unit's responses to variety of external stimuli - either ones that you could think of while developing, or ones simulating conditions that led to a bug in your code (if these conditions can be reduced to a unit test, which may or may not be the case)
  • they give you a cerating assurance that the code you have created for the unit will not be so easily broken in the future by somebody who is refactoring it for whatever reason (bug fixes, improvements, rearchitecting, whatever)

And that is pretty much it.

All other valid reasons for unit testing can eventually be reduced to these two. I remain in a violent disagreement with some of the other "qualities of unit testing" listed in the linked blog post of my esteemed colleague. I won't attempt to go over them one by one here though, for the lack of space.

Don't get me wrong - unit tests are extremely useful - these days they are quite essential. Applying unit test to your code will make it better. You should absolutely be unit testing your code, whenever possible. You should be trying whenever possible to create unit tests mimicking conditions that led to reported bugs. But - it is a criminal offense to stop there. And it is an even bigger crime to insinuate that unit testing alone is a sufficient QA process for any sort of serious software project.

Ok, So How do They "Lie"?

Let's try to answer the question of what purposes unit test are not useful for, or what are the dangers of relying on them, shall we?

  • Unit test are not a necessarily a means for documenting your system, sorry. I have seen a fair amount of unit test that did, and an even larger pile of those that didn't, instead increasing chaos and miscommunication. Tests will only become your system's docs, if you create them with this specific purpose in mind. The same can be said about your actual code - it may or may not be self-documenting
  • "Green" (all passing) unit tests don't necessarily mean that your system is healthy. It is not humanly possible to test for every scenario, you can break your system in many funky ways and still make your even most stringent unit tests pass. Boy, do I have stories to tell about that one...
  • Trusting your unit test mocks is wrong. Mocks are only able to superficially mimick the real world. Claiming that mocks can substitute the real environment is like claiming that a blowup doll is a good approximation of a marriage
  • They are worthless if they are slow. In a non-trivially large system, unit testing can take hours (if not more) - and your automated build will take the same amount of time. This makes unit tests worthless as a vehicle for instant feedback - nobody will bother waiting half a day for the results of a build after they committed some refactored code. Yes, you can and should partition your code to smaller modules, but then your builds do not test everything - they only test your module

All of the above are valid problems (and I challenge you to prove me wrong), but the next one is the kicker:

Even if you are a master programmer, you have no idea what to test for. There, I said it. And I have a war story to back me up:

One of the best developers in our team has created a fine piece of code, unit tested the hell out of it and was proud as a baby of his accomplishment. And a fine piece it was indeed - chapeau bas! Yet - it failed "in the field". Its problem was performance - it failed to be efficient in the face of real-life conditions. And the developer in question could't quite believe his eyes whan somebody else on the team investigated the problemand pointed out where exactly in his code the root cause of the problem was - it was a classical case of "this one is obviosly correct, it is not necessary to test it". So if this bloke is unable to create proper unit test suite (and his software development skillz are absolutely top-notch), nobody can.

So please, don't fire your QA department just yet. Their job is still important, even if you unit test.

AttachmentSize
blueface.jpg43.73 KB

About the Author: Janusz is a software developer and team manager with over 15 years of experience. He has been working for a long time for multi-national corporations, mainly in the telecommunication and embedded systems industries, He is now a co-owner of SPARTEZ - an independent agile consulting and software development company

Comments

I strongly agree as well as

February 17, 2009 by pbielicki, 5 years 23 weeks ago
Comment id: 2236

I strongly agree as well as disagree with what you wrote - especially with >>Ok, So How do They "Lie"?<< part which contradicts my post. The fact is that I wrote pros and you wrote cons of unit tests - it's the same difference when comparing "Hey, I will live about 30 more years!" and "Oh God! I'm gonna die in about 30 years". Well, somebody who is 40, or 50, or even 60 will be right saying both sentences - it's the questions of attitude and what he/she wants to convey. If you want to prove that unit tests are not good for everything you would probably disclose all things that suck. If you want to convince somebody to start writing unit tests you would probably describe all good things you can achieve by doing so.

Nobody said unit tests are good for everything - especially for performance testing where you have to have dedicated performance tests. And nobody said that unit tests can lead to firing QA department - unit tests are developers tests (and I consider them ONLY developer's tests). You sill have to perform zillions of other tests to be sure your system does WHAT and in the WAY it has to do.

To conclude - generally unit tests don't lie to you. And yes - they lie to you if you want to test performance by just unit testing your code.

Test for contract

February 17, 2009 by sginter, 5 years 23 weeks ago
Comment id: 2237

Believe me or not, I mostly agree with you ;-)

However, as a not-so-master programmer I can only advise you to test for method/class/unit contract.
Write a few tests for expected ('normal') inputs, then identify and test corner cases (that you know of), add some clearlyinvalid inputs to see if the code fails gracefully.
You will add new test cases when you start fixing bugs later - you will know what to test for.

There are quite a few reasons why unit tests are really useful, but as you mentioned - megabytes have already been written on this topic, let's save the bandwidth.

Unit Tests work best for defined units

February 17, 2009 by Ricky Clarkson (not verified), 5 years 23 weeks ago
Comment id: 2238

Unit tests will only show flaws in the internal consistency of software, not whether it works outside the programmer's understanding of the unit's purpose. This can make unit tests seem useless, but being more confident of the internal consistency allows one to more readily adapt when the purpose of the unit becomes clearer.

The same is true of types, but types show the absence of flaws, not the presence of them.

Missing a trick

February 17, 2009 by Keith Braithwaite (not verified), 5 years 23 weeks ago
Comment id: 2239

his software development skillz are absolutely top-notch

Clearly, they are not. He's missing a trick.

it was a classical case of "this one is obviosly correct, it is not necessary to test it"

This is why the discipline of test first (or even better, test-driven) is so important. Having someone working with you to reply "yes it does" when you claim "this case doesn't need a test" helps a lot too.

Unit testing isn't sufficient but it is a huge help. It helps most when done in the most effective way. Somehow these hugely effective bits of technique get mentioned less and less. A shame.

What about the other 99.9999% of times

February 17, 2009 by Pramatr (not verified), 5 years 23 weeks ago
Comment id: 2241

I agree with many of the points here, you can't just get rid of QA, you can't just rely on unit tests for everything but they do have their place. I'm always suspicious of anyone thats going to tell me they have one cure for all ills.

So if this bloke is unable to create proper unit test suite (and his software development skillz are absolutely top-notch), nobody can.

Ok so what about the other 99.9999% of times he wrote unit tests, did they suffer from the same problem as well? Are we just talking about an insolated incident or did he always just *miss* things. Many of the bugs we find are because an area doesn't have test coverage or it's something that simply can't be unit tested. We still need QA on this, they aren't going anywhere.

NOT missing a trick

February 17, 2009 by Janusz Gorycki, 5 years 23 weeks ago
Comment id: 2242

Believe it or not, but the bloke in question is the most religious of us all in our team when it comes to all things TDD - including "test first". But (and it is a very, very big but) in ANY non-trivial system, it is simply not possible to think of all possible scenarios and test every possible stimulus that may happen to interact with your code.

I can bet you that nobody (including me, you and every other reader of this post) would be able to figure out the potential problem in this code just by doing a TDD on it.

What is in the contract?

February 17, 2009 by Janusz Gorycki, 5 years 23 weeks ago
Comment id: 2243

Mostly +1 to what you said. But - it is not always clearly defined WHAT the contract of your unit actually is (it doesn't matter if it is formalized or not). Does the contract include performance characteristics? Memory consumption? Behaviour in "disaster" conditions (out of memory, out of disk)? People can and will use your unit in ways that will make your hair grey. You won't be able to predict all perverted ways your module is going to be misused.

Having said that - you should still try :)

How much do you expect by unit test?

February 17, 2009 by alepuzio (not verified), 5 years 23 weeks ago
Comment id: 2244

Hi,
I read your critique to unit testing. I agree with your sentences, but in my opinion you present the limits of the unit testing, not the defect.
1. Unit test are not a necessarily a means for documenting your system: true, but if the choice is No documentation in natural language, UML diagrams, etc and Doc only with unit test then the unit testing is very necessary.
2. "Green" (all passing) unit tests don't necessarily mean that your system is healthyTrusting your unit test mocks is wrong A lot of time it's a problem of response to questions: "What are the conditions where the test is matter?"

bye

As described, the trick WAS missed

February 17, 2009 by Keith Braithwaite (not verified), 5 years 23 weeks ago
Comment id: 2245

I'm confused. You wrote:

the developer in question could't quite believe his eyes whan somebody else on the team investigated the problemand pointed out where exactly in his code the root cause of the problem was - it was a classical case of "this one is obviosly correct, it is not necessary to test it".

So as described he did think of the case and then decided not to test for it.

By the way, it's true that not you, nor I nor anyone else can think of all the cases for a non-trivial system. We can't for most trivial ones, neither. Which is why we still do need integration testing and QA (although as much of that as possible should be automated: humans should write tests, not do testing). But who's saying otherwise? I've been doing TDD for nearly ten years and intensively unit testing code post-hoc for longer than that and I don't know anyone who's claiming that unit testing removes the need for QA. Przemysław in particular makes no such claim in the posting that you reference.

hmm

February 17, 2009 by Janusz Gorycki, 5 years 23 weeks ago
Comment id: 2246

Yes, he _did_ think of this case and decided not to test for it. Just as when he/you/whoever spot a "for" loop and decide _not_ to test whether your compiler generates proper assembler code for it - and believe me, sometimes you should! The problem is - you don't know that you should beforehand, only after your code craps out. But even after that, you really don't start retrofitting unit tests on _all_ your "for" loops, do you?

Someone Crazy

February 17, 2009 by Merkidemis (not verified), 5 years 23 weeks ago
Comment id: 2247

Ok, can someone please cite the crazy people that think getting rid of integration and system testing is a good thing? I have a hard time thinking that such a thing would even cross someone's mind as more then a sick joke lasting all of a second.

Re: Someone crazy

February 17, 2009 by Janusz Gorycki, 5 years 23 weeks ago
Comment id: 2248

Ok, it is not a particular statement per se, dismissing the importance of the post Unit-test QA, that inspired this post. It is rather the general gut feeling I have, that the importance of TDD is blown out of proportions in relation to other means of QA by quite a few evangelists of agile methods.

It is especially aparent in a bunch of marketing-like articles that I have read lately (no links, sorry, let's not spread this nonsense) that you can ONLY be agile if you do TDD, every other QA technique be damned.

Bollocks, I say. TDD is just one of the tools for agile methodology (and not even the most important one), not the nirvana.

BTW: wouldn't you say that threaded comments would be a nice usability addition to this site? This discussion is getting awfully messy, because my responses are not close to the original comments.

System Tests Are Essential

February 18, 2009 by Roger L. Cauvin (not verified), 5 years 23 weeks ago
Comment id: 2249

Unit tests are great for the two purposes you mentioned and not so useful in the other ways you mentioned.

However, you didn't mention one of the most important shortcomings of unit tests. Ultimately, what matters is whether the system solves user and stakeholder problems. In other words, it has to fulfill the requirements. You don't improve what you don't measure. So measure the satisfaction of the requirements, both functional and nonfunctional. I.e., use system tests.

Long response

February 18, 2009 by Chris Wash (not verified), 5 years 23 weeks ago
Comment id: 2250

Very good insights. You need to know both the pros and cons of testing your own code.

I wrote an extended response to this as a blog entry. It morphed very much into its own thing but I'm interested to get your take on the matter.

Thanks very much.

A few notes from this bloke...

February 18, 2009 by Wojtek (not verified), 5 years 23 weeks ago
Comment id: 2251

Duplication has been removed by Artem. Hopefully correctly
I don't want to comment on that post in general, although I think that underrating (and not using) unit tests is much worse that overrating them). Still, like every software development practice, writing unit tests requires your thought and commons sense.

I don't want to comment on that post in general, although I think that underrating (and not using) unit tests is much worse that overrating them). Still, like every software development practice, writing unit tests requires your thought and commons sense.

With regard to the "war story", I would like to deprive it from its value as I believe I am the guy who Janusz refers to in his blog.
1. the "bug" was about poor performance. Everything except for that was still correct. Just users had to wait too long for the answer. Standard (regular) unit tests are not for testing performance, although unit tests frameworks (like JUnit and its derivatives) directly or indirectly support non-unit testing (like integration testing, UI testing or performance testing)
2. The "fix" was about just changing one regexp pattern
"([/\\\\]?[\\S ]*?([^/\\\\]+\\.java))(:\\[?(\\d+)([\\,:](\\d+)\\]?)?)?"
into another one "^(.*?([^/\\\\]+\\.java))(:\\[?(\\d+)([\\,:](\\d+)\\]?)?)?" and I was not able to find with this change (made by somebody else) any automatic unit test (or performance test) which would:
a) prove that the first pattern is slow and that the second is fast
b) demonstrate (document) which new strings would be matched by this new pattern and were not matched by the old one
3. the code in question was not really well tested, as it was an outcome of overnight programming exercise/tournament called "Fedex" by Atlassian. By design its about having something valuable, innovative and/or eye-candy quickly with less (or no) emphasis put initially on the code quality aspects. If the result of Fedex is interesting, then it's always time for polishing it in regular time (and not at midnight). So your suggestions that this code has anything to do with superb unit tests are just invalid.
Having said that, I still wrote it overnight in TDD way (with unit tests written even before the production code) and even though the functionality is quite powerful and flexible, there have been no single bug report (except for the mentioned here performance problem) since I released it in Atlassian IntelliJ Connector several months ago.

Concluding, I would love to hear pros and cons of unit testing (and real war stories) from more developers who really are expert in unit tests and test-friendly design (i.e. they have been using TDD for many years in various software projects) and know they are talking about.

My 2 cents,

Wojtek

I seems that this site liked

February 18, 2009 by Wojtek (not verified), 5 years 23 weeks ago
Comment id: 2252

I seems that this site liked my comment and duplicated its content. ;)
Sorry folks, but I cannot edit it and clean it up.

Cheers,
Wojtek

Test Metrics are only as good as the way they are intrepreted...

February 18, 2009 by Paul Bourdeaux (not verified), 5 years 23 weeks ago
Comment id: 2253

Maybe the Unit Tests aren't lying to you, instead you just aren't listening to what they are really saying. ;)

Unfortunatly I see unit tests and their resulting metrics misused way to much, and I think your blog hit on a lot of the current issues.

For instance, Unit Tests are certainly not meant to replace QA, user acceptance testing, or functional testing. Any development team that believes that they are are most certainly NOT practicing Agile. In fact, the Agile process incorporates product owners directly in the process so that there is continuous user acceptance testing.

Good post.

It's about specification, NOT verification

February 18, 2009 by Mario Gleichmann (not verified), 5 years 23 weeks ago
Comment id: 2257

UnitTests in the sense of TDD are not used for verification (that's a nice side product) but rather for specification (that's what BDD is all about - trying to refocus TDD back into its original purpose anf gettin' rid of all those testing-related vocabulary which produced so much irritations about TDD)

For some further thoughts about TDD as a form of specification (in the 'tradition' of BDD) you may want to take a look at

http://gleichmann.wordpress.com/2007/12/09/test-driven-development-and-d...

and

http://gleichmann.wordpress.com/2008/10/22/did-you-really-get-behaviour-...

Greetings

Mario

I remember

August 16, 2009 by Robert (not verified), 4 years 49 weeks ago
Comment id: 2964

..when I was lucky enough to be working as a developer, the amount of bugs I would miss when testing my own code. I would always enter data I expected people to enter and therefore my code would handle it. sigh Rob

A purpose

September 4, 2009 by Ed (not verified), 4 years 47 weeks ago
Comment id: 3323

I believe every test has its fundamental purpose. Unit tests serves to eradicate some fundamental bugs and ensure that it's compliant with the specs. Although it has its flaws, it is important and eventually upon integration, will serves as a platform for a better user acceptance testing experience.

Cheers, Ed

I know the part about not

October 27, 2009 by Amy (not verified), 4 years 39 weeks ago
Comment id: 3977

I know the part about not being able to test all possible scenarios really rings true for me. My company has tested and tested many times, over and over, thinking we had a flawless product only to find out that when it gets in to the hands of users they find "creative" ways to break it. I guess the only solution is more testing but it can be frustrating. Amy

TDD is definitely the key practice...

October 29, 2009 by Anonymous (not verified), 4 years 39 weeks ago
Comment id: 4024

...and perhaps Pair Programming ;) Because omitting it is probably the easiest way to see make an agile project degenerate. (Purely her opinion though)

"Unit test are not a necessarily a means for documenting your system.... "
The Angel firmly believes in the documentary power of unit tests. They key reason is that they are executable. This means, if they are running green they are unambiguously telling you the behaviour of the unit under test.

""Green" (all passing) unit tests don't necessarily mean that your system is healthy. "
The Angel is curious what this has to do with unit testing specifically? All testing, absolutely all testing suffers from Russells Paradox. No amount of testing can confirm the system is working correct.

"Trusting your unit test mocks is wrong. "
The Angel has seen far too many developers go nuts with Mock Objects. She agree's this leads to danger and is not always necessary. She thinks it comes from a mistaken belief that a valid unit test must always exercise only the unit and no cooperating objects; this is false.

"They are worthless if they are slow."
The Angel feels she should point out that low execution speed is generally accepted as a property of an agile unit test. So, ipso facto, if its executing slowly it is no longer a unit test.

She also feels your post is suggesting that an agile developer would consider unit tests alone to be sufficient and forgo other important test-froms such as integration, acceptance, user, beta etc.

She hasn't come across anyone who thinks that in well over fifteen years.

Janus, I agree with most of

November 8, 2009 by Gil Zilberfeld (not verified), 4 years 37 weeks ago
Comment id: 4056

Janus,

I agree with most of what you write. It's just that that the conclusion is misleading.
Unit testing is as good as you write them, and allows you reduce wasted time on manual debugging.
If you don't write them well, yes, you might go chasing your tail. But here's the thing - go practice. You'll write better tests and you'll see through the lies.
I've written a post about metric calculation, and what we thought are the best things to measure, so you can actually tell what works in the process. I'll be happy if you can comment your opinion on that.

Thanks,
Gil Zilberfeld
Typemock

However, as a not-so-master

February 10, 2010 by Anonymous (not verified), 4 years 24 weeks ago
Comment id: 5486

However, as a not-so-master programmer I can only advise you to test for method/class/unit contract.
Write a few tests for expected ('normal') inputs, then identify and test corner cases (that you know of), add some clearlyinvalid inputs to see if the code fails gracefully.In 2000, the show starts at school e okul applications have turkey and newly started to eokul be used widely. how our people e mezun can benefit from this e-okul practice very well of course it 's also e mezun are discussed. Google, please love me anymore aq
You will add new test cases when you start fixing bugs later - you will know what to test for.

I would actually love to use the TDD methodology

May 25, 2010 by Anonymous (not verified), 4 years 9 weeks ago
Comment id: 6809

...But by the time I get to work on most projects, someone else has usually already turned it into an untestable abstraction of the inadequate specification it is vaguely based on.

I wish I was lucky enough to actually have an opinion on this matter.

Right

May 31, 2010 by Alex (not verified), 4 years 8 weeks ago
Comment id: 6858

I completely agree with you. It is not so easy as it is said here: http://www.videorolls.com/watch/Unit-Testing-in-Software-Testing-Projects . In fact by using unit testing we can omit important points.

Another "unit tests lie"

November 10, 2011 by Anonymous (not verified), 2 years 37 weeks ago
Comment id: 20439

Great post

Funny, I found your post looking for a post with the same title Unit tests lie, that's why I love them

I partly agree with you. For example, I don't agree with you on "Mocks are only able to superficially mimick the real world.". Well, for a class' method "the real world" is just a blackbox: it gives it some inputs, it takes from it a result. It's absolutely possibile to perfectly mimic the real world, at least, as seen by a method.

As specified in the post above, there's no need to trust in mocks: you know they are lying, and that's not a problem. No one trusts his mocks. They are not there for this.

Lie to me...

December 10, 2011 by Pascal (not verified), 2 years 33 weeks ago
Comment id: 20532

As soon as your system is more complex than "Hello World" your tests can not cover all possible execution paths. I'm pretty sure that most software out in the wild has paths that have never been executed....
So if you know/accept this then your tests are not lying to you... they just tell you something different.

And tested code usually is better code because testing forces you to separate concerns, write shorter methods and so on.

For the vast majority of our

March 2, 2012 by NOnn (not verified), 2 years 21 weeks ago
Comment id: 21108

For the vast majority of our developers snapshot view is the better choice. However. I am part of a build and install team that services a number of different teams spread out over dozens of VOB's and Branches in a multisite base cc environment. I wrote a small utility called ViewMaster that reads in a list of config specs and reconfigures a dynamic view based on the config spec selected. This allows me to switch context very fast and very often while I make small installer changes for the different teams. This would be a real pain in the rear with snapshot views. forfait sosh forfait sans engagement forfait mobile illimite sms illimite forfait mobile internet comparateur forfait bloque rio bouygues rio orange numero rio sfr numero rio bouygues rio virgin calcul imc portabilite

Satisfy your self and help me by checking this out Guys! <33

March 19, 2012 by AvittyGamer (not verified), 2 years 18 weeks ago
Comment id: 21422

Hellow Guys,

I recently joined this streaming webcam program to get some $$$ and currently it's available free for this week to sign up and register!
I don't know if this will change but it's a great time for you guys to join and I'll be camming frequently.

Info of myself: I love to flirt while playing games on my xbox 360, i spend most time with fifa and skyrim.
I adulation photo shoots and any kind of modeling which is my favorite career pick ;)

Please wach and check out myy gallery and sign up!
Find here: http://seohearts.com/Avitty/

I used to be seeking this

March 21, 2012 by Anonymous456 (not verified), 2 years 18 weeks ago
Comment id: 21437

I used to be seeking this kind of information for quite some times. Thank you and best wishes. Cosmetic Alliance(Botox) provide you with access to a high-quality, cost-effective service you can trust.
Roll Forming Machinery

Really?

March 21, 2012 by Mark (not verified), 2 years 18 weeks ago
Comment id: 21448

I never really belived that those tests would lie to me and to us. How cou,ld they!
Jailbreak iPhone 4 Verizon

3 years later...

March 23, 2012 by Anonymous (not verified), 2 years 18 weeks ago
Comment id: 21468

Isn't it obvious that there is a world of a difference between something being pointless and something not being foolproof?

Unit tests are not "proof that nothing can happen", yet they can help you prevent the most blatant mistakes.

It's delusional to think that any amount of safety (and, in the end, tests are only a safety net) will provide 100% guarantee that nothing will ever happen.
It's not the unit tests that lie to you, it's yourself lying to yourself when you believe that unit tests are a miracle pill against all that is wrong in software.

Best practice in agile development commends that unit tests must be combined with quality assurance, not "can replace" these. The initial post just underlines why this is best practice.

I agree with the Januz on the conclusion though: Just becasue you got unit tests, it's no reason to abolish QA.

For the vast majority of our

May 21, 2012 by JennyH (not verified), 2 years 9 weeks ago
Comment id: 22262

For the vast majority of our developers snapshot view is the better choice. However. I am part of a build and install team that services a number of different teams spread out over dozens of VOB's and Branches in a multisite base cc environment. I wrote a small utility called ViewMaster that reads in a list of config specs and reconfigures a dynamic view based on the config spec selected. This allows me to switch context very fast and very often while I make small installer changes for the different teams. This would be a real pain in the rear with snapshot views. rio orange

Thanks for sharing the info,

May 28, 2012 by Anonymous (not verified), 2 years 8 weeks ago
Comment id: 22595

Thanks for sharing the info, keep up the good work going.... I really enjoyed exploring your site. good resource... UK

Good One...

May 30, 2012 by Murali (not verified), 2 years 8 weeks ago
Comment id: 22628

I have been reading and reviewing your article for a few minutes to ponder some of your sound points. I like the way you think and I agree on a large portion of this content.
Sexual Enhancement Products

These are some great tools

May 30, 2012 by Anonymous (not verified), 2 years 8 weeks ago
Comment id: 22630

These are some great tools that i definitely use for SEO work. This is a great list to use in the future..
Convert PDF to Jpeg

This is such a great resource

June 3, 2012 by Anonymous (not verified), 2 years 8 weeks ago
Comment id: 22736

This is such a great resource that you are providing and you give it away for free. loans rated

Really a great addition. I

June 5, 2012 by dasdsd (not verified), 2 years 7 weeks ago
Comment id: 22801

Really a great addition. I have read this marvelous post. Thanks for sharing information about it. I really like that. Thanks so lot for your convene. Beverly MA

Nice

June 7, 2012 by rohanq (not verified), 2 years 7 weeks ago
Comment id: 22815

Thank you for another essential article. Where else could anyone get that kind of information in such a complete way of writing? I have a presentation incoming week, and I am on the lookout for such information. Ferienhäuser mit Hund

great one

June 9, 2012 by kanhaiya (not verified), 2 years 7 weeks ago
Comment id: 22841

Really enjoyed reading this. Thank you for sharing this valuable information with us. I have bookmarked this site and will be sure to check for updates. Book of ra

hi

June 15, 2012 by subodh1 (not verified), 2 years 6 weeks ago
Comment id: 22923

I feel strongly about it and love learning more on this topic. If possible, as you gain expertise, would you mind updating your blog with more information.
book of ra online spielen

Im no expert, but I believe

June 18, 2012 by Anonymous (not verified), 2 years 5 weeks ago
Comment id: 22949

Im no expert, but I believe you just made an excellent point. You certainly fully understand what youre speaking about, and I can truly get behind that.
rouse hill accounting

You have a good point here!I

June 21, 2012 by Anonymous (not verified), 2 years 5 weeks ago
Comment id: 22998

You have a good point here!I totally agree with what you have said!!Thanks for sharing your views...hope more people will read this article!!! Parhaat Ilmaiset Kolikkopelit

RIO

June 25, 2012 by Code RIO (not verified), 2 years 4 weeks ago
Comment id: 23032

La portabilité du numéro se spécifie comme la possibilité gratuite à tout client possédant déjà un numéro de téléphone de changer d’opérateur en gardant son ancien numéro.

Notre site de portabilité du numéro permet d'obtenir un RIO Laposte mobile dans le but de muter de forfait mobile ou de téléphone GSM en quelques clics. En effet, le numéro RIO est obligatoirement à donner à votre prochain opérateur car il s’agit en réalité du Relevé d’Identité Opérateur, un code unique attribué à une ligne téléphonique et à un contrat client.

Lorsque vous serait doté de votre propre RIO Bouygues
, vous avez le choix de vous d'aller dans une boutique en ligne ou point de vente de l’opérateur choisi. indiquez lui votre code RIO vous garantit ainsi d’engager la procédure de portabilité de manière gratuite.

Ensuite l’opérateur s’occupe de tout dans un délai de 10 jours maximum ! Vous avez juste à attendre.

Rappelons que pour contracter une procédure de portabilité du numéro, vous devez être libre de tout engagement. Vous ne devez ainsi être sous le coup d’un engagement de 12 à 24 mois.

néanmoins l’abonné peut toujours quitter son opérateur avant la fin de durée de son engagement, en acquittant les sommes RIO Orange
dues (25% de l’ensemble des mois restant du contrat) comme prévu dans les divers contrats.

I score been city out many of

June 27, 2012 by seseliagil (not verified), 2 years 4 weeks ago
Comment id: 23073

I score been city out many of your posts and i can assert pretty echt substance. I instrument definitely marker your situationlove quotes
.

nice blog

June 29, 2012 by Radhika (not verified), 2 years 4 weeks ago
Comment id: 23102

I am very much pleased with the contents you have mentioned in this blog. I wanted to thank you for this great article. Berlin jobs

Nice blog and absolutely

June 30, 2012 by Anonymous (not verified), 2 years 4 weeks ago
Comment id: 23134

Nice blog and absolutely outstanding. You can do something much better but i still say this perfect.Keep trying for the best.
daniel

If you set out to make me

July 1, 2012 by Anonymous (not verified), 2 years 4 weeks ago
Comment id: 23158

If you set out to make me think today; mission accomplished! I really like your writing style and how you express your ideas. Thank you.
later alligator www.capcredit.com

Well - the truth is that, in

July 8, 2012 by jafyesor (not verified), 2 years 3 weeks ago
Comment id: 23257

Well - the truth is that, in the agile community unit tests seem to be a little bit overrated. Or, to be more precise - they are often incorrectly used as a "silver bullet" substitute for the tedious, labor-intensive, time-consuming, boring and un-gratifying, manual integration and system tests. They quite often, and wrongly, become the one and only QA process in the project. Let me tell you - these hope of getting rid of integration and system testing are false and maintaining them is extremely dangerous.birthday wishes

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <b> <i> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <br> <blockquote>
  • Lines and paragraphs break automatically.
  • Web page addresses and e-mail addresses turn into links automatically.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>. Beside the tag style "<foo>" it is also possible to use "[foo]".

More information about formatting options

By submitting this form, you accept the Mollom privacy policy.

Best of AgileSoftwareDevelopment.com