Thursday, 28 March 2013

Think of a Word - a 99 Second Talk

I've said in various talks that I don't enjoy creating, justifying, or applying, definitions.
I think creating your own definition does work well as an exercise, because you can explore your vocabulary and try and create an encompassing statement of intent to cover what you mean when you use a word. And there exist, people who do the 'definition' thing really well. James Bach and Michael Bolton act as exemplars of this approach and freely share, discuss and debate their definitions via blogs and twitter.
I do not appear to fit into that group, my definitions do not work well, and when I adopt a definition it feels stifling. I find that my definitions change, not because I have changed, or the situation changed, but because I created a definition that didn't encompass everything I needed it to cover.
Fortunately, for me, I found an exercise that words better for me. Using words as symbols, and identifying words that apply to the concept or term I want to explore. These words might act as attributes, or characteristics, or high level abstractions, or symbols.
When used as symbols we deliberately read into them. We deliberately don't try and tie them down. We deliberately explore them from different angles and take from them what we need at the time. The symbol doesn't have a definition. You find and explore the relationship between yourself and the word, at the time and place you find yourself now.
I phrase it slightly differently in the 99 second talk. Different medium. Different message.
I prepared this 99 second talk in advance of TestBash 2.0 but in the end the talk didn't feel right on the day. So I created another one instead. Since I prepared the talk in advance I have a recorded practice session, which I release now.

Next Steps:
  • Create your own definitions - see if that works for you, see how you feel about it
  • Identify some symbols, explore them - see if that works for you, see how you feel about it

Monday, 25 March 2013

99 Seconds at TestBash 2.0

I presented a 99 second talk at the TestBash 2.0
I went to the TestBash with a different talk prepared, but it didn't feel right for the TestBash so I created something else when I was there. As a result I forgot 1/4 of it, so I only hit about 70 seconds.
I don't think anyone noticed, but I'll link to the recorded video should it ever find its way online. (The actual video is contained within this vimeo).
So that I have a record of what I meant to say. I recorded the 99 Second talk at home.
The basic theme revolved around the same concepts as the talk I didn't do. About ownership of the words that we use to describe testing. Something that I've talked about and blogged about before. But I say it again because I think the testing world will transform into something more effective when we take responsibility for the words we use and the testing we do.

This talk above came out different from the talk at the Test Bash, which came out different from the one in my head. Because despite having some notes on what I meant to say. I reinterpreted those notes differently each time.


Wednesday, 6 March 2013

What does a technical exploratory test session look like?

As part of "Technical Web Testing 101" I wanted to provide an example of what an exploratory test session with additional "Technical" focus might look like, at the same time demonstrating some of the capabilities of modern browsers whilst comparing them to proxy servers. Phew, a bit of a mouthful, and you can see the resulting video below.
I uploaded the video to Youtube, as well as it forming part of the course, because I think it has interesting elements that can stand alone. And I don't see many examples of exploratory testing on the web. I wanted to try and provide an example of 'doing' exploratory testing, and the type of notes I took.
As testers we can provide harsh criticism but I won't let that stop me sharing. If you don't think this provides a good example then I encourage you to share your own. I do welcome constructive comments and critique.
I'm getting better at thinking aloud as I test, so my verbal narration actually makes sense in this video.

A few things I want to point out.
  • I try to explain the thought processes and decisions I'm making
  • You can hear me verbally describe risks that I want to investigate
  • You see me spin off track a little to investigate some 'interesting' ideas and then get back on track
  • Modern browsers have a lot of impressive functionality built in that we used to have to use proxy servers to achieve the same effect
  • I'm "Tool Augmented" not "Tool Driven" so the tool helps me do what I identify I want to do, not what the tool allows me to do
  • I'm testing
  • I'm using the "Edit This Cookie" chrome plugin 
  • I did this as two sessions. The first was to get my bearings - and I made notes during it, which you can read below. The second was to record the video. The second session was slightly different as you can see if you compare the video with the notes, which shows that even when we repeat sessions, we learn additional things and do the testing differently.

Regarding the notes
  • This was an informal session so I didn't timestamp anything - which I would do if I was testing on site professionally.
  • The notes were mainly to guide me in replay so aren't formatted with any annotations e.g. @Bug or headings
And here are the notes in all their glory. I used Evernote as my note taking repository.

Testing with Gruyere with Google Chrome
Create a new account
"bob" "bob"
I can see the new account is created with a "GET"?!?
perhaps I can use different actions?
Perhaps I can amend? and change password?
Perhaps is_author has other alternatives
e.g. is_admin?
Having created an account - check storage
And I have a cookie - have I logged in automatically? I have I'd like to amend the cookie and check if the name can allow me to login as someone else, or the permission field can change - but I can't do that out of the box with Chrome
Technique - means I have to look for a tool to do that - fortunately I already have one installed, but if I didn't - this would prompt me to do so.
Try changing the cookie value to admin, refresh, and I no longer appear to be logged in
Perhaps that is a key? to the ID?
Repeat the get request and see what happens
User already exists - ok fine.
Try and use the url for different actions e.g. "amend" gives me an invalid action
Let's see what profile does
I'll inspect the form and I can see an update value and it is a get request again
So instead of "amend" try "update" in the url
incorrect password? But it is the same one?
Ah - perhaps it is looking for the validation password as seen in the profile update form
for update it probably needs oldpw as well
If I take out pw then what happens? request accepted
but presumeably didn't update anything
what about the is_admin risk?
hmm nothing seemed to happen, - what if I logout and login again?
Woohoo admin

Tuesday, 5 March 2013

Technical Web Testing

I have put "Technical Testing" at the top of my agenda this year and have just released a new course - Technical Web Testing 101.

You can suggest things you want me to cover by filling in this 2 question survey.

Since I build up a fair bit of material from all of this, I've started putting it into video form, and have setup a new free course Technical Web Testing 101. to provide introductory and overview material. I'll build longer courses around this material but I like to try and put out some material for free.