2

This question already has an answer here:

I have been testing (manually) for over 11 years, but I have noticed now that almost every company want employees with automation experience and I would like to learn.

The question that I have is; what tool can I use to learn automation, for someone with no experience like me? Thanks.

marked as duplicate by NarendraC, Niels van Reijmersdal, Chris Kenst, Bharat Mane, Yu Zhang Mar 23 '17 at 5:40

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

1

On here you have various career individuals which is terrific for information sharing, but you need to zero in on your career path and end goal and then focus on how to get from where you are to there. As a current SQA Manager and one who has also been a developer, test engineer, automation engineer, business analyst, deployment/release manager I would offer the following breakdown.

Manual Tester Starting point: If you just want automation then I would start with a paid tool that does the heavy lifting for you. There are a bunch of them and all have plus/minuses. Here is one site to splinter from http://www.testingtools.com/test-automation/ and also check out the links listed on what-do-i-need-to-start-from-zero-in-automated-testing. The other thing to focus on is html specifically for web apps to understand the rendering of the page as tools read these and it's important to understand how they are being read. This includes things like CSS, HTML, Javascript(references/calls, not the whole thing), SQL, etc...

Going Deeper: After the above if you want to dig in behind the scenes or utilize a code library like Selenium, then you need to learn coding. Optionally you can also utilize Sikuli http://www.sikuli.org/ which is free but written in a pythonish style and functions on image recognition which makes it easier to utilize than a straight code language approach.

Changing Careers or having a career hobby: If you want to be a full automation engineer and possibly a developer then start learning code and dive in 100%. Please be aware though that there are multiple full time careers here. Developer, Automation Engineer, SDET engineer, Test/SQA, others similar but variously named. To be a great Test/SQA engineer you don't need to know how to program, but it would set you apart to know how to read code though. The other career paths you need to know how to program with the focus being different. Based on your 11 years of manual testing, I would assume that you want to boost your skills and not swap careers, so I would advise you to focus on how automation tools work and how the applications under test are built and work (html/css/javascript for web and likely unique technologies/libraries utilized and SQL/Oracle as well). Basically don't sit back and only view GUI's but dive into and learn from your counterparts about the specifics of under the hood. If you are in SQA and want to learn more and are surrounded by developers, find the people around you who know what you want to learn and be very curious and eager to learn. Find what they do outside of work to keep skills current and emulate. Immersion is the best way to pick information & skills up and make them your own.

2

To learn automation you need to learn programming. No way around it.

Most programmers know more than one language, and use the one best fit for the job on hand. Learning multiple languages will also allow you to understand the difference between quirks of your first language and semantics of programming.

Python is commonly considered as a best first language for beginners.

Also, common wisdom says it takes 10K hours of effort to master something like new language.

For programming, you need to have attention to detail. Computer does what your code says to do, not what you thought it say. From your post I have impression that you need to work on the paying attention to details.

Even if English is not your first language, you should have learned that sentences start with capital letter and "I" is capitalized. Humans have no problem to understand mis-formatted text and even fix it for you, but computers are substantially less forgiving.

So you need to consider if you want to invest 10K hours learning a skill where computer will hourly show you which details you forgot. Anybody can learn programming, but work all day as programmer is not for everybody. Do you like solving logical puzzles? Programming requires certain mindset to keep challenging your assumptions - do you have it?

1

I'm a manual tester and not particularly technical (I have no coding background except basic HTML). I was first introduced to Selenium IDE at my previous client and it's pretty simple to pick up. It only works with Firefox (so web applications only), but is a Record and Playback type of plug-in so you'll pick up the basics of automation pretty quick.

Besides that, I can only suggest you read books, use the software, learn a language and start from there. There's no better way of learning than doing.

Edit: This might be a duplication of What Do I Need to Start in Automated Testing?

  • 1
    Selenium is definitely the defacto standard for browser UI automation (one form of automation). Learning Selenium by using the IDE is a fine way to start but if you intend to use it on a regular basis you don't want to use the IDE. You want to learn about Selenium's Page Object pattern and you'll have to do some very basic programming to get there. – Chris Kenst Mar 16 '17 at 18:53
  • +1, absolutely fair point. It's not a long-term solution, but it's a great place to start for those without any coding knowledge. The real challenge then would be jumping from Selenium IDE to Selenium RC! Good luck, OP. – trashpanda Mar 17 '17 at 10:28

Not the answer you're looking for? Browse other questions tagged or ask your own question.