Mythical Rubies – My Personal Project

It has been quite a busy week with various testing projects (both at work and at home). I have recently been looking at mobile applications and trying to understand how to test them. It really requires you to think about different aspects of the hardware and what is required to test. However, the exploratory nature has been awesome *smile*

When I think about it, since I’ve started the blog and delved into the various activities, I average about 11 hours per day in a testing related activity (testing, reading, programming). However, I do make sure to get quality family time, which is very important. It is all about the balance.

The lesson that I am really learning with testing different applications is developing the important ‘What If’ mindset.

What happens if I click here instead of here?
What happens if I remove the permissions from the third party system while still logged into the primary application?
 
What I am enjoying is developing these skills and then transferring them to my work life. It all helps to keep the interest level high and the passion alive.

I have been working through the Open Web Application Security Program, which has been a revelation; it is very interesting to think about all the different avenues that a tester could has to think about when they are testing a web application.  I believe that this aspect of testing is becoming very important as more people engage with the online world through banking and e-commerce. Currently I am on Ajax Security and Cross Site Scripting (exciting). The book that I am reading to aid me in this endeavour is the Web Application Security Cookbook by Ben Walther and Paco Hope.

I am also reading the Agile Testing book by Lisa Crispin and Janet Gregory, I have just finished the first chapter and I am enjoying it so far, the writing has a nice flow and pace. The book is engaging to read and once I have finished it, I will write a review on this blog. Although, I’m sure that most testing professionals have read this book.

As a member of the Software Testing club forum, I was inspired to learn Ruby for two purposes, 1) To learn a language that could be useful for my testing career and 2) To push my mental capabilities and keep the brain matter alive. I have a mentor that is also learning Ruby and he devised a program that took words in an array and constructed them into funny sentences. This got me thinking about the assignments that I did back in my Artificial Intelligence class in University (I loved that class – I guess Star Trek’s Data helped in that regard).

It was to write a program in Prolog that was a version of 20 questions. We had several topics to program and I chose Mythical Animals.

Therefore, what I will do is set myself a goal of writing a similar program in Ruby. It should be possible and I should have fun delving into the various subjects in order to solve this problem. My thinking about the assignment is as follows:

My logic is that everything will revolve around sets. We have the following creatures.

Minotaur
Satyr
Dragon
Centaur
Phoenix
Demon
Mermaid

What I need to do is find out the features of each creature and assign them to the name.

For example

Dragon = [Wings, Breathes Fire, Has Tail]

Minotaur = [Hybrid, Has Horns]

Then based on the answers given, the program will eliminate the sets based on the ‘Yes’ or ‘No’ answers.

What I need to do is split them all up into groups and then use a decision based logic to ask questions to the user. I hope that it will be a simplified ‘Guess Who’. If I crack this program, then I might try to replicate that game in Ruby.

This project can help me understand the aspects of code coverage, gem libraries and other juicy elements that Ruby can provide. I also get to test my own code.

I am looking forward to starting. I will post my progress. *Rubs hands*

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s