Monday 30 May 2016

Yes I am a Flaky test

Every thing went well since last 10 years , till I recognized members of my team are pulling me out today from every direction giving too much attention, spending their valuable time in analysis, debug without actually understanding why I have failed.

Oh my Expert Developer, its not healthy to consumerism 1000 mg of caffeine, to tune entire Friday night just to conclude that I pass every time on development machine but some how failed when you pumped in $1000 hot fix, 

The quality head you really find critical issues but this time your issue will be marked as Not a issue 

and My dearest manager you invested too much capital to develop a solid portfolio of build evaluation tools nevertheless evaluated the quality of work the developer did based on the recent check-in. 

Oh My God this shall pass. Everyone is working really hard these days.


However being flaky test I kept watching Every time you pre-configure environment, rebuild or re-execute me.

Just to bring down your excessive stress  Its not that there is a product issue, its not that I fail regularly, its that I  have been implement with lot of dependency, I sometime lack resources during execution, some time you verdict before the actual operation is completed, sometime concurrency, some times test configurations and sometime I am run without the pre-requisites.

The grass shall have been greener on this side, if some time was spent carving me, minimizing dependency that downgrades my expertise to find a regression bug.


A research list some of the factors as Async Wait, concurrency, test order dependency, resource leak,Network ,Time,IO,Randomness,Floating point Operations, Unordered collections and something that you know which world does not know .


I get dishearten as I am on top list to be quantized, that is you may not need me to evaluate your current build  or I am getting to much emotional to be fired actually, as I am failing without providing any value addition to both developers and testers, in addition I respect the time you spend on me every-time I get into notice release after release developer after developer tester after tester that come and go time to time in this competitive world.

Being declared flaky I request you to run me couple of time to see whether I behave same, I may unlock the bug for whom I was really incepted. The project that led me to existence was a big hit and many folks working on it  dint actually knew what's going else where in the market.


If you think this is less worthy why don’t do some analysis and determine my performance on some other configuration or my behavioural  patterns from couple of days.


Oh Yes I am a flaky test but I believe I am worth execution....

Friday 27 May 2016

Code Coverage Using Google Test for unmanaged code using Visual Studio

Folks I am back with a shout out. Today we are going to walk on creating a static library in Visual c++ and will use Google test to write unit test and perform code coverage.
In this small article I will be using a set of utilities
Visual studio 2013, Google Test Runner that integrate in Visual studio for easy discovery of gtest and the finally the Google test framework. I am writing this to get a quick revision if some day I walk back again to do it again.


The very first step was to download the tool shown above

I downloaded the gtest framework and compiled the library using the following setting



Once the library is ready I created a dummy static library to get some hands on testing and named it as Win32Project1 which simply had two functions sum and sub.



To start writing some Google test code I created a another C++ console based application and configured it with the settings to get code coverage by setting linker properties of the test project as


And advanced->profile as

Do you know that the above two settings will help me to get coverage of the api I am going to test in a while.
One these are set I created a dummy Gtest which is very basic and ran it using the test runner. Notice that I have to set of test written one from Microsoft unit testing other from google test setting applied before writing test was.

 
As the picture show sum is 100% covered however the sub is not covered as I have no test written for it in Google Tests.




Apache Beam Learning In Java Tutorials

 Wow  https://youtu.be/9kGETU63rkc