Archive for July, 2017

What I Like To See On My Public Forms

Wednesday, July 19th, 2017 by The Director

A control that says (Internal Use):

What do you suppose that means? I, a member of the concert-ticket-buying public, should not choose it?

Yer dang right I wrote in that office use only spot.

Fortunately for me, the tickets did arrive in the mail.

Mind your application’s labels, brothers and sisters, and ensure they contain relevant, helpful information for the user.

Where Will Your Tab Stops Take You Today?

Tuesday, July 18th, 2017 by The Director

As some of you might know, I’m particularly lazy. When my hands are on the keyboard, I don’t like to reach all the way over to that mouse to do something, so I pay especial attention to hot keys and tab stops. And apparently, I am one of the few people to do so.

If I have a couple minutes and want to vex the developers, I start checking the tab stops in the applications I test.

Here’s what I like to check:

  • Navigational elements (links and headings that expand divs) have tab stops as do the form controls (buttons, check boxes, radio buttons, text areas, and the like.
  • Make sure when navigational elements and controls appear, such as if the user expands a form or chooses an option that displays dependent controls, that the new items have tab stops.
  • The tabs stop order makes sense. Sometimes IDEs assign tab stops as the controls are added to a designer. Sometimes, developers add controls after the initial form design that don’t get tab stops or get tab stops at the end of the tab order instead of in the place where the form displays on the page.
  • Ensure hidden controls do not appear in the tab order. Just this morning, I found a tab stop for a hidden button and, using the space bar to click the button, I triggered an inappropriate action.
  • Controls have visible focus indicators. Although I’m savvy enough to look to the status bar to see if focus is set to a link, your users are not super users, so make sure your application gives them a hand by showing them where the focus is. And note the effects of the focus indicator: make sure it’s not resizing the control with focus and bumping everything else.
  • Tab order is reversed if you go backwards. SHIFT+TAB should take you in reverse order. Make sure it does.
  • Tabbing doesn’t get trapped in third-party controls. Things like calendar date pickers and stuff might come from outside your organization. Make sure when your developers use them that the keyboard user does not get stuck in the controls with no way out.

Remember the tab stop and keep it wholly for my benefit.

When Your Alphabet Increments

Monday, July 17th, 2017 by The Director

After century of dispute, the German alphabet just got a new character:

Have you ever been typing in German in a blaze of BLOCK CAPITAL anger, but been stopped short by the inability to write the next letter of the word SCHEI…? Help is finally at hand.

At the end of June, the German Spelling Council decided to add a capital ß (Eszett) to the language, bringing to an end a debate that had raged on in the world of German orthography since the 19th century.

Now, instead of using SS to capitalize the Eszett, Germans should use ẞ.

Oh, boy, what will this do to your legacy data?

On the other hand, it will render this old test obsolete.

(Link via.)

I Would Have Logged It Without Blushing

Tuesday, July 11th, 2017 by The Director

Say, doesn’t the icon for Private/Incognito browsing sort of look like a bra?

As I once said:

Yeah, QA, in the meetings and in the defects, you have to go there. Remember, the Internet is place full of miscreants, miscontents, and people who will, in fact, go there.

Hopefully, your co-workers will recognize that you’re just being professional. So just be professional about it, but do bring these sorts of things up.

It’s Not My Experience, But It Rings True

Saturday, July 8th, 2017 by The Director

WELCOME TO OUR STARTUP WHERE EVERYONE IS 23 YEARS OLD BECAUSE WE BELIEVE OLD PEOPLE ARE VISUALLY DISPLEASING AND OUT OF IDEAS:

As you can probably tell by looking around, every employee at our startup is 23 years old. On the morning of your 24th birthday, the barcode on your employee ID stops working and you can no longer enter our building. We do this to ensure our company has a ceaseless, youthful energy. We believe old people are displeasing to look at and also, bad at ideas.

The startups I’ve worked at and with have been started by people over 30.

But I’ve talked with a number of places where I wondered if my, erm, years of experience might not have been dissuasive.

Today’s Dirty Trick: URL Truncation

Friday, July 7th, 2017 by The Director

So I’m testing a Web application that sends a lot of different notification types to the users, including emails that include links to the items the user just posted on the site or things the users can do now on the site.

So instead of just clicking the link, I’m copying the link to the clipboard, and when I paste it into the address bar of the browser, I lop the last couple of characters off.

For example, if the URL in the email is:

https://(redacted)/posts/198992

I lop a bit off so it’s:

https://(redacted)/posts/1989

That should either display a post with that ID (if one exists AND the user logged in can see it) or an error message that says the post doesn’t exist.

The site should NOT spit up a Python error or an HTTP 500 error. I argue (and at length) that it should not display a generic 404 in this case, as that will make it look like there’s something wrong with your site instead of the URL it was given.

Instead of a simple problem with an invalid ID, you might find the truncated URL bollixes up some routing information (to make a long story short: Modern URLs include in the paths, separated by slashes, identifiers that tell the Web server what part of the code should handle the request). You might even want to specifically bollix the routing information to see what happens. For example, a URL like this:

https://(redacted)/users/edit/1099991/

Chop out some of the routing information:
https://(redacted)/users/edi

Where does that go? Who knows?

In any application that sends out URLs, you really have no idea how the user will handle that URL. They might click a link, they might swipe and paste, they might get a forwarded email where the URL is wrapped on two lines but the email program only makes the first part on the first line into a link the user can click. So your application has to account for and to handle elegantly URLs that are truncated.

So let it be truncated, so let it be done.

Have You, Sir, Ever Had Improper Use of Test Data?

Wednesday, July 5th, 2017 by The Director

Data glitch sets tech company stock prices at $123.47

A stock market data error this evening set an undetermined number of companies listed on the Nasdaq exchange to a share price of $123.47, sending some tech companies’ stock prices crashing and others’ soaring. In a statement obtained by the Financial Times, Nasdaq said the culprit was “improper use of test data” that was picked up by third party financial data providers. The exchange said it was “working with third party vendors to resolve this matter.”

I hope none of you gentle readers turned in resignation letters based on sudden ephemeral wealth.

And I hope you work with your devops guys to help make sure they scrub test data appropriately before promoting to production. Although they might rankle at it, your scrutinizing gaze upon their procedures and processes can sometimes help to find problems or to spot places to improve. Bloody heck, in the olden days, testers worked on Extract/Transform/Load, data warehouse, and conversions between expensive software packages. Just because your company does the same thing every week or every night doesn’t mean QA involvement should be less.


wordpress visitors