Generalize add iPhone number feature

Reading Time: 1 minute
Depicted generalization [source: Wikipedia]

In previous post, I explained how to maximize issue. In this post I will explain why is important to generalize issue and will apply generalize mechanism on add iPhone number feature failure.

Wikipedia states that generalization of a concept is an extension of the concept to less-specific criteria. It is a foundational element of logic and human reasoning. Generalizations posit the existence of a domain or set of elements, as well as one or more common characteristics shared by those elements.
For tester, concept is failure. AST Bug Advocacy course taught me how to generalize a failure. We need to uncorner our corner cases. This could be done by showing failure (or its absents) under less extreme conditions. Second tactic is to show failure (or not) on broad range of systems.

I have already done that in maximization post. During the assignments in Bug Advocacy course, I noticed that Generalize and Maximize from RIMGEA acronym usually overlap.

In order to uncorner my test case, I used “+385921” number because that number is the shortest number that contains Croatian international code 385, and local mobile operator code, 92. 1 is for the shortest none existing number. None existing because I wanted to be sure that failure is not connected with possible iOS ability to know that number is mobile by doing digit analysis. Failure was reproducible using that number.

I run test on iOS 7.03 simulator. Failure was not reproduced on that environment. That gives us indication that this could be regression issue.

In next post I will try to explain how to Externalize the issue.

Facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

Maximze add iPhone number feature

Reading Time: 2 minutes
Spectacular Tesla Coil (Wikimedia Commons)

In previous post we described how to isolate failure in bug report. Next task is to do follow up testing in order to try to demonstrate this failure in more spectacular way. We need to Maximize (RIMGEA) it.

AST Bug Advocacy course teaches that in order to Maximize the failure we can do four types of follow up testing:

  • vary our actions
  • vary the program’s settings
  • vary the stored data you give the program
  • vary the environment

1. Vary our actions

By changing default “home” phone number category I discovered that there are ten possible categories: work, iPhone, mobile, main, home fax, work fax, pager, other, custom. Only iPhone and mobile categories offer send message icon. Nothing spectacular here, but we discovered new information about the product.

By exporting contact that contains work, iPhone and mobile categories to vcf file format, and importing back that information, nothing changed in that contact. Again, nothing spectacular, but we discovered vcf file format for work, iPhone and mobile categories.

work category format:
TEL;type=WORK;type=CELL:(2 )

iPhone category format
TEL;type=IPHONE;type=CELL;type=VOICE:(3 )

mobile category format
TEL;type=CELL;type=VOICE:(4 )

Additional types? And the rule how those extra types are added is not obvious? What is going on here?
I am stopping my analysis here, because this is another failure. Remember, we are investigating here message icon presence.
In vary stored data technique, we will investigate how contact changes when we change vcf file format.

2. Vary the program’s settings

I changed two iOS settings related to contact application.
Settings/Phone/dial assistant/off caused no change in failure manifestation.
Settings/Messages/imessage/off caused no change in failure manifestation. Settings/Messages/sms/off when imessage not available also caused no effect in failure manifestation.

3. Vary environment

I used following number:


On Simulator for iPhone (Retina 4 inch) and iPad with iOS 7.0.3 when I added that number under home category, message icon was present. Not so spectacular as Tesla Coil, but we found inconsistency!

4. Vary stored data

I did following tests:

  • home category with valid mobile number – no message icon
  • mobile category with land line number – message icon is present
  • +++++, #####,  *******, no effect on failure

Then I varied exported vcf data. I imported edited vcf file using email.
I discovered that when vcf row has several types then types priority starts from left to right. For example,
TEL;type=IPHONE;type=WORK;type=VOICE:(3 ) belongs to iPhone category, and
TEL;type=WORK;type=IPHONE;type=VOICE:(3 ) belongs to work category.

I have found nothing spectacular here.

Maximizing the failure was the greatest effort so far. In next post, I will try to Generalize the failure.

Facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

Isolate add iPhone add number feature

Reading Time: 1 minute
Isolated Jabuka island in Adriatic sea.

In previous post we described R (Replicate from RIMGEA acronym) on iPhone add number feature. I is for isolate.
AST Bug Advocacy course teaches that in order to isolate a bug, we need to:

  • eliminate unnecessary steps
  • have one failure per report

Lets eliminate all unnecessary steps. Our goal is to be still able to replicate the issue with that minimal number of steps. We can remove all Given steps that describe precondition.

So, instead of:

Given that I unlock iPhone
And I was not in search mode in contacts
And I touch Phone icon
And I touch Contacts icon
And I touch blue + in upper right corner

we can have:

Given that I am in All Contacts
When I touch blue + in upper right corner

One failure per report.
In original report, observation Then section describes two symptoms instead of one: message icon is present for some time and then it disappears and progress iOS icon is shown for some time (indicates that some background task is running). Furthermore, in original report I entered number that is already listed under “my number” contact. When I entered number that is not already present in iPhone contacts, message icon does not show at all (and there is no progress icon).

This is indication that we report two issues instead of one. Original Then section:

Then message icon is present right to number
And number label is home by default
And I see iOS progress icon right to mobile network indicator
And message icon disappears after some time

is replaced with:

Then number label is home by default
And there is no message icon

We showed how to isolate a bug in our bug report. In next post, we will try to Maximize the failure.

Facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

Replicate iPhone add number feature

Reading Time: 1 minute
When DNA replicates, it creates life.
When bug is reproducible,
it has better chance to be fixed.

I described here possible iOS bug. This post will describe how we applied R from RIMGEA to this bug.

R is for replicate. As replication is core mechanism of human existence, it is also very important for software bugs. We need to verify that we are able to replicate the issue using the failure steps. In that way we are sure that bug report is credible and it will not waste programmers time. Otherwise, we will lose our credibility.

Failure steps.

Given that I unlock iPhone
And I was not in search mode in contacts
And I touch Phone icon
And I touch Contacts icon
And I touch blue + in upper right corner

When I touch add phone option
And I enter my mobile phone number: +385 92 1762 984
And I touch Done in upper right corner

Then message icon is present right to number
And number label is home by default
And I see iOS progress icon right to mobile network indicator
And message icon disappears after some time

I was able to replicate issue several times using described steps. We confirmed that failure is reproducible.
I described the failure using the Gherkin notation. Given section describes failure preconditions, When section is action part and When section is the failure part.
I think that failure steps are more clearer in that way. What is your opinion? Can you replicate the issue by following issue steps?

Next is I,  Isolate the failure. It will anser the question: “Can we reduce the Given, When and Then sections?”

Facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

Beer testing at Zagreb STC #16

Reading Time: 1 minute
Miroslav (left) and Zeljko,
craft beer evangelists caught in action. 

As we previously announced here, yesterday we had special Zagreb STC #16 meetup. With the help of our sponsor Toptal, we had an opportunity to test different flavors of beers available at Sheridan’s Irish Pub, and first production of American Ale created by first Croatian Craft brewery Nova Runda.

Testing session was led by professionals, Miroslav Ĺ uvak, cofounder of Nova Runda, and Zeljko Filipin, software tester who can produce his own beer and is a brother of second cofounder, Marko Filipin.

We had two new comers who found this event on Meetup platform. They business is nuclear physics, volunteering, refactoring of 20 000 lines of Java code, beer and startup Enfojer. We also joined with Zagreb Javascript meetup group.

We learned:

  • what is Craft brewery,
  • beer creation process,
  • that beer is side effect of yeast digestion of malt,
  • how to regulate beer bitterness,
  • that Europe lager is most famous beer type in Europe,
  • hop is actually beer spice,
  • if you want to learn more than read book “Craft Beer World
  • and the most important, Nova Runda produced excellent Ale!

Final stage was beer tasting. We tested almost 10 different beers, in small cups. Great learning experience.

Facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

iPhone add number feature

Reading Time: 1 minute

In April I attended CRAFT2014 conference. My college suggested that we book our accommodation over the AirBnb service. We found great place near conference venue for affordable price. We were very happy with the service.

Where is send message icon?

In order to prepare for our trip to Budapest, I saved our host mobile number in my iPhone (iPhone 4s, iOS 7.1.0) under the home category (default one).

I wanted to check the number by sending SMS. As I was already in contacts application, I wanted to use send message icon next to number that I just entered. I noticed that icon was missing (see picture).

Is this a failure? Can I make it more spectacular failure? In order to determine that, I will use what I learned in just finished AST Bug advocacy course (still waiting on my final result).

RIMGEA is acronym that help testers to write clear bug reports.

In following blog posts I will apply each of letters to send message issue in order to write clear bug report. My goal is to sell that bug to Apple iOS developers. In other words, I want that bug to be fixed.

Facebooktwittergoogle_plusredditpinterestlinkedinmailby feather