Bottles

diffmerge the tool I always wanted

Our test output data contains several long output files with very long lines. If the test fails it is hard to see where to see the problem in that line. I had no good tool to see the difference in a line. Now I have found a tool, diffmerge. Diffmerge is the tool I always wanted.

My problem

Suppose you have a system to test that receives or generates binary data. The system converts that data. In our case, the system parses the data at fixed positions in each line. Then it checks if it is valid.In case the data is valid, it is send to another system. If a line is not valid, the system raises an error.

The test injects some data in the system and checks afterwards if the data is in a database table. From there the other system picks the data.

The test compares the expected or the input values and stored values are the same. The problem is more complex. Sometimes the system was not generating the correct values. In that case I need to take a diff of the expected result and the actual result.

The following pictures show some output data. They differ. Can you spot the difference between the two files below ?

I can not see the difference. It is only one number that is not correct.

diffmerge, the solution

I do not want to write a program by myself. There must be a tool. I am not the only person with that problem. I searched the net and found diffmerge. This is a tool that can see the difference of a file. It highlights the different characters.

Now I can see which characters are different. Note that the example of test data here in the screenshots is a random generated string of numbers. The data we have has blocks, so if you know where the difference is, it is to see on what rule the software has an error. diffmerge is the tool I always wanted. I like the tool.

About the author

I currently work as a Test Automation Consultant at b.ignited. Here I work for different clients in different industries to help them start and speed up their testing cycles

I’ve been testing software since 2000 when I became involved in testing telephone applications and hardware. Since then, I’ve been able to expand my experience by testing a variety of embedded, web, mobile and desktop applications. I have used various development methodologies from waterfall to agile.

I consider myself to be a lifelong learner.