The automation project continues to blossom
My automation project is coming along very nicely. While not a very good gauge of progress, lines of code is how I track what I'm doing. At this point, I have crossed over 3,000 lines of code mark.
I'm not writing gibberish, as that doesn't help me. My goal is to write tests as quickly as possible, not necessarily as efficiently as possible. I'm not a dedicated automation engineer, so if I can't write, test, debug and complete the test in a single day, I'm painting myself into a corner.
I take a piece of functionality and break it down. I have 4-5 hours to complete whatever it is I'm attempting. If it's not ready to be committed by the end of the day, I need to rethink what I'm doing. Either my task needs to be broken down further, or I'm trying to do something that is more complicated than it needs to be. I don't need to be fancy.
Yes, I may repeat blocks of code that could be more efficient. I may copy and paste several things and only change 1 or 2 objects. That refactoring will come. But, when I start, I am following the quickest path to resolution.
If it takes me two hours to put a test together by copying and pasting the same thing a dozen times, I'm fine with that. I'm not being graded by how my code looks.
There is no point in spending 10-15 hours putting a test together that only does an hours worth of work. That's not efficient from a time perspective.
If I spend 2 hours putting something together, then run it for 4 hours, and make several hundred passes, that's worth the time. I can then go back with the time I've saved and make the test more efficient.
As I've said, I go through each test several times, making adjustments and improving it. But, at each state, it's still full functional and ready to be called into service to get the job done.
It's working and saving me time, that's all I care about.
Also, once we get to the usual lulls that come along, I turn around and do the opposite with the project. I mark my progress by how much code I can take out.