Thursday, March 19, 2015

Monthly Learning Session #2: Selenium Functional Testing and Book Reviews

For the February MLS, our CTO June conducted a training about Selenium Functional Testing.

CTO June (middle) coaching Mickmick (L) and Kevin M (R) in Selenium

Testing is a very important process in ensuring code quality. June began by explaining the difference of manual testing vs. scripted testing. In the more traditional manual testing, the tester or the developer will have to exert more effort and time in exploring the website and trying out its various features, like filling-in forms, submitting forms, and everything else. Usually, bugs and all other errors are found during this process, which satisfies what testing is for, although since the tester is human, there might be a few bugs that will get missed. Aside from this, another possible downside to manual testing is that it just really takes up a lot of time - and in this industry, time is money.

However, when you utilize Selenium, a browser automation tool with Python driver, you cut the time you will have to spend in testing by more than half, cover more bases and discover more errors, and ultimately automate your testing process.

Using Selenium for functional testing is as easypeasy as bacon greasy! All the developer or tester has to do is to create a script in Selenium and it will automatically test every aspect specified in that script created. This not only makes the developers' and testers' lives easier, it also saves clients' money!

June further outlined the advantages of using Selenium for automated functional testing:
  1. Selenium is free and can be used by all!
  2. You have control. Since you are using a script you created, you can specify which portions to fill and how thorough the testing would be.
  3. Selenium, since it is automated, is repeatable. No matter how many times (in the same project or on others) you have to test a code you have written, it will now be as easy as a click of a mouse button and you wouldn't have to recreate your script time and again.
  4. Automated testing is more accurate because you can specify in the script how thorough you would want to test your code. Hence, you can catch bugs in those dubious areas that you just know are more prone to bugs.
Obviously, Selenium does have its disadvantages such as you might have overlooked some things because they were omitted or weren't included in your testing script. Also, Selenium, while free, entails a bit of work to learn and master just like all new things that we have to learn and master. But those are very small inconveniences compared to what you can achieve with learning Selenium.

having fun learning together!


happy team!
Jefford also shared his book review for "Rookie Smarts: Why Learning Beats Knowing in the New Game of Work".

He says that the biggest takeaway he got from the book is that in order for any professional to stay relevant in his field or industry, he should stay fresh but keeping on adding to his knowledge, keep learning, and knowing when to think like a rookie.

Thinking like a rookie would mean that you should let go of deep-seated biases or adamant approaches to problems and issues and look at it with fresh eyes. The rookie would be someone who is naive, innocent, and to a degree, unlearned. But this can be an asset as well because it forces you to look at things in a fresher perspective hence, giving you a fresher outlook and point of view on how to handle things. In the end, it all comes down to this: that for today's knowledge workers, constant learning is more valuable than mastery.

Jeff's book review of "Rookie Smarts"

Dan also shared about Confidentiality and Privacy practices and processes.

Confidentiality is very important because it protects our privacy, our ideas, and other information that we simply don't want to be out there in the worldwide web for others to see. In this advanced and connected age, it is very easy for unscrupulous individuals with bad intentions to get our information and they may use it against you or others. This is why Ingenuity really keeps tabs on all information and data being handled by the team. We would like our clients to maintain their confidence in us and this is one way of keeping their trust - by keeping their business private.

Remember, if you own a company or if you are someone who has access to a lot of information, one slip up can mean losing your competitive advantage in the market. So we must all be attentive and vigilant in keeping all confidential things just that - confidential. This is so that we may avoid any potential dangers or fallouts later on.

client confidence entails keeping their trust in keeping things confidential
It was a great Saturday training. All in all, a very successful, fun, and knowledge-packed day! Cheers to more MLS's! :)

1 comment: