As a software tester, I hope you already know the value of focussing on a specific task. There has been many studies to prove that multi-tasking is not as effective as we may think and cost of switching context in our brain is huge. That is why practices such as session based testing are so effective.
However, it's easier said than done. Distractions are everywhere. You can be distracted easily by
- A Twitter or Skype notification on your computer screen.
- A noisy workplace environment.
- Your manager or a colleague.
- A call or a text message on your cell phone.
- Push notification from apps like Facebook, What's App, Linked-In, Emails etc.
- Thousands of other things such as smell of food / coffee from the kitchen :-)
It's hard to maintain focus. Do you agree?
We can not remove all the distractions. We can not control all of them. However, some ...
Yesterday I was thinking about the importance of having a pause button for the tester and wrote a post on the Linked-In. In my opinion, without understanding mission and identifying stakeholder, there is no point in focussing on scope and strategy. I have shared my experience to substantiate this claim where asking WHY made a difference in the project I was working on. Please read Remember Why before What and How on Linked-in and let me know your thoughts.
BTW, if you are on Linked-In - feel free to connect with me.
Someone has rightly said - conferences are what you make of them. It is possible to hear completely different accounts of what people experienced at the same conference. It could be great learning experience for some and complete waste of time for others.
Going to a conference is a huge commitment in terms of time, cost and efforts. I am an independent consultant so do not have to give a business case or take permission - but still I do need to justify this investment of time and money to myself.
My main objective to go to the conferences is - to learn more. I learn by attending sessions and I learn by talking to people between the sessions. It’s always nice to share problems, solutions, constraints to understand what works in a given context and why. It’s also nice to challenge (with the intention to learn more or clarify) and ...
How can I make test automation more effective? This simple question can lead to many interesting things.
According to dictionary, effective can be defined as - capable of accomplishing a purpose or capable of producing intended or expected results.
In order to understand effectiveness in the context of test automation, we need to answer following questions -
- What do we want to accomplish with test automation?
- What do we expect test automation to produce?
For me, automation should yield following two things -
- It should give confidence
- It should find defects
We strive to get confidence and we hope to find defects with test automation. However, most of the time test automation becomes repetition - execution with the same data and steps. There is immense value in this repetition - but should we stop there? What can we do to make test automation more effective?
In my opinion, testing is a sampling exercise. If we ...
So what would be the ROI of reading this blogpost? It’s possible that you get an idea which helps you in your test automation effort or removes myths you may have about software testing or you find that you are in software testing field because of wrong reasons and you leave this field altogether.
There are many possibilities and all of them are difficult to quantify. In my opinion, it is difficult to quantify most of the activities we perform in our field - software testing.
I have never done ROI calculations for any testing activity. My take on most of the activities I perform is simple and based on the MoSCoW model
Things like exploratory testing, robust test automation, Continuous Integration, NFRs etc are more or less MUST for projects I get involved in. We discuss and get agreement on how to to implement / manage them but never ...
If you are working in web application testing domain and are interested in test automation, you might have used, come across or heard about PageObject Model in test automation. If you haven’t heard of it, it might be a good idea to read this article.
In nutshell, a separate class is created for every page / screen of the application in the PageObject model. This class exposes methods to represent all the operations a user can perform on various elements on the page. For example, a class to represent LoginPage might have methods to enter userName, password and click on submit button. Tests can use this class to interact with the page instead of duplicating elements everywhere in the test scripts.
PageObject essentially decouples UI from the tests and as a result makes test automation suite a bit more maintainable. In my opinion, if you are not doing anything else ...
And one more post on my experience of CAST 2012..
I realized pretty early in my career that theory of software testing (In books and course material provided by certification bodies) and practical on-field testing have very little in common. That was the primary reason for me and Komal to come up with testometer few years back. Learning by exercising our brain is much better than filling our brain with definitions. Unfortunately, we did not spend time on testometer lately, but may be in future..
At CAST 2012, there were plenty of opportunities to exercise and challenge our brain. Every evening after 7:00 PM, ball room was open for the testing games. Testing games were not new to me - I did Rapid Software Testing with Michael Bolton and he uses many games in his class. I also played few games with Jon Bach at STP Nashville last year and ...
Last week I was at San Jose for CAST 2012 to give talks on two interesting topics. My first talk was around the limitations of acceptance criteria and second talk was focused on how we can increase value of automation by introducing randomization where it make sense.
During my conversation with participants around randomization, many people suggested that I should write a blog about this - and so here it goes.
Pretty much all the test automation projects have four main elements.
- Navigation - How do you reach to the screen / page which to test
- Data - How many variations of data are possible
- Sequence - In which sequence data can be used on the page
- Operation - What are the different ways in which operations can be performed.
For example, if we take the example of registration page for any popular site such as Twitter, this is how these four elements can be used ...