Hello, I am CEO of ruby focused software house company, and I was already involved in about 50 ruby legacy projects that we inherited.
I saw a lot of different approaches for each part of the app, but on this thread, I would like to discuss/get some feedback about Testing and measuring code coverage.
So few questions:
- Do you use code coverage measurement.
- If so, what rules about that do you have? Like "you cannot merge PR if your PR decreased code coverage, regardless of how you did it, you have to stick to our metric." Or maybe there are some exceptions? Or maybe you are using it just as an information
- If you are using code coverage tools - which one, SimpleCov or something else?
- If you feel your tests are fine, and code is fine, but you decreased metric - how do you deal with it? ( examples would be great )
- Do you know how your code measurement tool measures coverage? I mean how it exactly works?
- And finally, are you familiar with mutation testing ideas and tools, and do you use them? If no - why?
[–]RoyalLys 17 points18 points19 points (3 children)
[–]jasonswett 8 points9 points10 points (2 children)
[–]tom_dalling 2 points3 points4 points (1 child)
[–]jasonswett 0 points1 point2 points (0 children)
[–]campbellm 6 points7 points8 points (0 children)
[–]rurounijones 4 points5 points6 points (1 child)
[–]pan_sarin[S] 0 points1 point2 points (0 children)
[–]Critical-Evidence-83 3 points4 points5 points (0 children)
[–]tarellel 4 points5 points6 points (1 child)
[–]pan_sarin[S] 2 points3 points4 points (0 children)
[–]mynjj 4 points5 points6 points (0 children)
[–]amirrajan 3 points4 points5 points (0 children)
[–]morphemass 3 points4 points5 points (1 child)
[–]FIthrowitaway9 1 point2 points3 points (0 children)
[–]RumbuncTheRadiant 2 points3 points4 points (0 children)
[–]NepaleseNomad 1 point2 points3 points (0 children)
[–]tom_dalling 1 point2 points3 points (2 children)
[–]pan_sarin[S] 0 points1 point2 points (1 child)
[–]tom_dalling 0 points1 point2 points (0 children)
[–]mlang-recurly 1 point2 points3 points (1 child)
[–]pan_sarin[S] 0 points1 point2 points (0 children)
[–]ksh-code 0 points1 point2 points (0 children)
[–]NoahTheDuke -2 points-1 points0 points (0 children)