Posted in accessibility testing, kiss, mobile testing

Minimalism design in testing

alcohol-addiction-awareness-day

Usability Heuristics

A while ago I wrote a few words about Usability Heuristics and what is their role in software testing. You might also heard about the KISS (Keep It Simple, Stupid) rule, which seems also to be impotent is such activities like web or mobile design. In this post I would like to focus on one particular issue (or trend), which becomes more and more popular nowadays. On the other hand, it seems to be just the common sense output of your software development – The Minimalism.

Good application – what does it mean?

Each year Android community chooses applications that were outstanding during the year. Competitions might differ in details, but one feature is clear and repeatable among all winners – good design.

When we are talking about design, we might be thinking “wait a minute, isn’t it an art – related stuff like sculptures, paintings or furniture?” Well – yes. But not only. I’d say that web or mobile app design is as important as it’s final working version. At the same time the role of software tester in development process, who is aware of good design importance, is essential as well. If the application works fine and causes no error, but simultaneously it is ugly – no one would use it. Or – in best case scenario – he’ll use it once (and it’s get deleted 🙂 ). Keep in mind that 80% of mobile applications are being deleted after the firs use. Why oh why? Most of all because they don’t work as expected, but sometimes – because they’re ugly 😀

A stunning example of beautiful, thought through application is Hopper – the one and only last year winner of best apps ranks. I’ll recommend you to download it from Google Play or App Store and just play around. Using this app is so pleasant and surprising like playing with a piece of art.

When I think about examples of good mobile design – I recall Hopper all the time. Pure love.

screenshot_2017-01-18-11-50-15

Aesthetic and minimalism design

Minimalism is achieved by reducing a design to only the most essential elements.

This heuristic states that aesthetic (which is rather a subjective feeling) and minimalism design (which can be measured somehow) are important.

For example: dialogues should not contain information which is irrelevant or rarely needed. Every extra unit of information in a dialogue competes with the relevant units of information and diminishes their relative visibility. This heuristic is extremely important to be followed in mobile app design.

Mobile applications are not supposed to be over packed with tabs, buttons or unnecessary content. App designers should keep layout as tidy and simple as possible. That is also a great challenge for the tester in the very last phase of each development – to make sure that all elements that have originally been designed are delivered within the working application. Always remember about the KISS (Keep It Simple Stupid) rule. It’s equally important on each stage of development process.

Testing usability is somehow about taking beauty into consideration.

Following trends

Essentially, minimalism is about breaking things down to the barest elements necessary for a design to function. In addition, taking things away until nothing else can be removed without interfering with the purpose of the design it’s also a minimalists’ routine. Remember, though, that certain design and graphical elements will directly affect the readability or usability of your website. Note, that it might be highly important in accessibility testing.

Minimalism could be applied to various branches of art or architecture, including web design as well. Testing minimalist websites or mobile applications might seem challenging, but possible for anyone.

Before you test anything in the area of usability – make sure that you are familiar with good web (mobile) design examples. It is good to know what’s on at the moment, keeping in mind basic rules as well. Take advantage of big players like: Twitter, WhatsApp, or less known such as: TheMinimalists, NorthKingdom, Sarah Hultin.

Don’t think it’s easier, because it’s simpler

When it comes to minimalism, don’t think it’s easier just because it’s simpler. Because there are fewer elements, you must provide the same level of usability (perhaps even better) with less interface. To balance aesthetics with functionality, minimalist web design is defined by use of space, amazing visuals, vivid photography, striking typography, and an overall focus on the content itself – and nothing more.

save-the-earth

Posted in exploratory testing

Cat testing – why not?

cat

 

Monkey testing

The term ‘monkey testing’ is rather known in tester’s world. It is a technique where a user tests the application or system by providing random inputs. We believe that unorganized test inputs are able to brake the application in the way that a trained tester won’t even try. It is basically true, because people tend to repeat known moves and actions. Pesticide paradox warns testers that they should change and update their test scripts often, otherwise they’ll stop finding issues. From this point of view – acting as a monkey seems to be tempting especially within the area of regression testing – not as a replacement but rather as the appendix to standard test suites.

Cat testing

On the other hand, animal kingdom is way bigger than just an ape type. If a monkey can test – why a cat can’t?

Today is a World Cat Day so this blog post would be related to my buddy – Greebo.

I am a cat-lover and I spend some part of each day observing my cat playing around with stuff. Trying to better my approach to exploratory testing, I just started thinking – isn’t my cat a great example of such tester?

A cat has any knowledge about things they play with. But they play anyway. This is what exploratory testers are supposed to do.
Exploratory way of testing fits to any kind of testing methodology, any type of company and project. You don’t have to be experienced in any subject (as ISTQB would like you to think), because it’s not the point. The most important aim is to play with application and to achieve a purpose.

img_20160506_220001

Exploratory testing might be dedicated to UI, functions or potential safety risks check. It may help to find out if the software is prone to malicious attacks as well as if it is easy to access for a novice user. Context  is the key to success.

Cat checks random features of stuff so hard in order to know them or to brake them, just like exploratory testers do. Cat does a lot of damage in certain sessions in order to provide fun for himself among naps and snacks.

img_20160722_183449

Purpose is important. Cats have their own purposes of running around and attacking things. Exploratory testers should also have some certain purpose of testing and don’t stop before an exploratory session is finished.

img_20160507_145054

Time frame is essential. When you start exploratory session – you can’t stop. Did you see a cat, who digs in a pot with flower when no one watches  and having brakes for pee? NO WAY. He digs so hard until the destruction is complete and then runs away pretending it wasn’t him. That would be a proper session of exploratory testing description. You specify the time frame, start and fight. You can finish only when you run out of your time.

One major thing that is different between a cat and an exploratory tester is that the cats cannot provide any notes 🙂 Note taking is an essential part of exploratory testing.

On the other hand, cats leave so much mess behind that in most cases you know exactly what they just did. Wondering HOW might take a while. That is also a good hint for you – if you hate taking notes – record what you do using for example Chrome DevTools or other apps. In the end it would be easier to recall what you’ve just did.

I would like to encourage you to level up your daily test routine and try to enrich test sessions in cat-like exploratory testing and just have more fun in what you do. Enjoy!

img_20160919_190849

 

Posted in mobile testing

From QA with Love

from-qa-with-love

Love confession

As today is a Valentine’s Day -I believe that my post should be at least a bit about love. I’ve chosen the anti-valentines confessions in public to the particular mobile app makers (I won’t say just developers), who don’t care about the UX and their users so much that they still deliver their apps to Google Play and feel good about themselves.

The post would be about a particular app and what is wrong with it – not about teams that delivered it. I work within the industry and I know that sometimes people do development that they are forced to do, weeping at night in the pillow. I know. I don’t understand, but I know.

Nevertheless, my choice, as usual,  is completely subjective. This application is in Polish, but it’s so wrong, that I had to place it here. Don’t mind the language – knowing Polish won’t help 😀

The homework not done

The epic. The worst, not only because lack of any logical UX: Lekcja+ (Lesson+).  I swore my private vendetta to this application – just try to download and try to figure out what is it about.

What’s Lekcja+?
An app for teachers, who are supposed to provided their timetables and in-school information. #innovation #PolishSchool #LowBudgetTender #MyEyesBleeding

Tester for the rescue

 

It was Monday afternoon some time ago in September. A friend of mine – who works at school – called me for help.
– Hey, I’ve got this app from school, but it doesn’t work. You know what to do with the apps, could you help me? I’m clearly doing something wrong.

images

I’m referring to version of Android application which has been released in September 2016 – presumably without any testing before (according to well – known rule “We never test our software – but when we do – we do it on production only”).

screenshot_2016-09-11-13-31-56

I’ll start from translating this awesome pop-up which stroke me just after app installation. On the app it’s in Polish:

“Information:

Due to large number of notifications about app lack of stability and some components not working some improvements have been introduced. It is obligatory to clear app data (including user data) to have the app updated.

We are very sorry for inconveniences

App changes include:
– stability improvement
– bugfixes
– minor view improvements”

Like – SERIOUSLY – this is the message they provided users with on production. Hey user – clear app data by yourself, we did some minor fixes, but don’t bother .

The application is a perfect guide What you should avoid when creating an app.

There is no menu, guideline, referral to UX/UI of other known Android app’s pattern and I’m not even talking about app stability or it’s basic functions. I’ve installed it on 3 random devices – and it crashed on two of them after installation.

Clearly – it wasn’t my friend’s fault that it has not been working.

Why developers don’t consider the purpose?

There is plenty of horrible apps out there – BUT – this one won the tender for a teacher’s app. At first – it’s government’s fault that they accepted that level of development and paid for it – but apart from forcing people to use crappy software on daily basics – there should be a work ethics of the developer and a tester.
Someone took money for it.
Someone released it and placed it the Google Play.
Finally, someone thought “yeah, it’s good enough, let’s release it”.

screenshot_2017-01-05-18-00-51

I am idealist maybe. I would like the world to be a better place. BUT why U no think while working. I know dozen of stories when a customer forces the team to make an Android app “just like the iOS one” – destroying platform guidelines and architecture “because it’s pretty” kind of reasons. On the other hand, Lekcja+ is an example of making other people’s life miserable.

This app was supposed to be a tool

It’s not an app which you could simply uninstall after first setup and forget about it. It was “designed” for teachers, who are forced to work with it on daily basis. And think about it for a moment – they (mostly) are non-technical people. Maybe this  app is they first installed app ever. Why – just why-  it’s so horrible!

screenshot_2017-01-05-18-01-20

I just wanted to help a friend. Sadly, I was not able to. Taking into account app’s poor rank at Google Play – I was not the only person struggling with the installation and functions. Poor me. Poor them.

Working for people

Making applications for public sector is hard and demanding work. Agree. On the other hand, it doesn’t release any team member from thinking of other peoples’ needs. In the end, public money means everyone’s money, so we all eventually pay for crappy software. What is more, a friend of yours might be a teacher and at he is struggling with the app at the moment.

We don’t do software for ourselves.

We – I mean all people working in IT industry. We do it for other people. Each user has a name and a job to do. Sometimes they use our software to complete it. You might think that Lekcja+ is not a life-supporting software, so I’m exaggerating. Sure, it’s not, but why forgetting about the user, while he is the one that would be frustrated with a crappy app most of the time.

I wanted Lekcja+ to be just an example of terrible software that we all struggle with.

dear-mr-developeruse-your-empathy-make-the-world-a-better-place-from-qa-with-lovekinga-witko

Posted in databases, Uncategorized

After hours – it’s friday #piąteczek

chill-out

Hi bored IT guys and girls

You’ve been thinking – what to do on Friday? Check my after – hours Top10 IT song list🙂

Not always should you be as serious as everybody think you are.

Preparing that song-set made me fun. I was trying to choose the best known songs – but I encourage you to comment with your own ones. There is plenty on the internet. My list is subjective – because it’s mine!
My criteria: we all know it / they are funny/ people sing well/ they are creative.
Try with your own one – I’m challenging you:)

#BestITSongChallenge

What do you think?

  1. The best known – the one and only – “And so you Code”

    1
  2. Something exclusively for QAs – “Hello from QA”

    4

  3. A song about benefits of live-patching – “Uptown Funk (remix)”

    6

  4. And the one about SUSE love – “Can’t stop the SUSE”

    9

  5. Code Monkey! – “Code Monkey”

    8

  6. Exclusively for all #Javistas – “Java is life”

    5
  7. Let’s pretend it’s a song – I love it :):):) “Java forever and ever”

    java

    The best from Poland (I could provide you with the translations :)) :

  8. “Internety robię” – yes we do

    10

  9. How to make a proper IT Conference commercial : “Programistok 2016” (yey!)

    2

    10. That is hideous, but still funny! :D:D – “My Informatycy”

    3

Hope you’ll enjoy all of them:) Cheers.

Posted in databases

SQL for dummies

do-somethingkind-today-2

…and when I say dummies – I’m thinking about myself a while ago.

As a tester – I was a complete ignorant when it comes to databases. At the beginning of my career path SQL wasn’t so needed for me. It appeared here and there, but we’ve never had a true romance. But then… suddenly… at a glimpse… love exploded 🙂

No, well, to be honest, I just decided to stop being dummy and put myself together. And I- Kinga Witko – learned it by heart and – basically – by myself. How did I do that?

Today I’ll give you some useful tips, that might help all SQL beginners to start their database adventure. If I managed to learn it – why couldn’t you?

Where should I start?

Most of you probably know that the one and only knowledge source is W3Schools website. SQL course is there as well. It is vast, full of examples and great exercises. The whole necessary knowledge is there, but for me – it wasn’t enough and I lack some structure in that course.

Level up

Some time ago I started to get familiar with CodeShool. They have awesome online courses – each of them – which is basically adorable – has A SONG(!) about the language you’re learning. There is a song about SQL too :).

Their online course is divided into to parts: one of them is free -for the other one – ‘The Sequel to SQL’ – you have to pay a few $, but it’s worth it. Not only the knowledge is structured, but also supported with great examples and opportunity to go deeper into SQL.

That was it – nitty gritty online course. It was also just the beginning.

After the CodeSchool course I was familiar with SQL enough to get back to W3Schools and practice more. But it still wasn’t enough. I wanted to have some  real database to make and brake (in worst case scenario).

How to practice?

I was recommended to install a free database named PostgreSQL. It is easy to install and really great. When you go through setting up your own database, tables and so on, you’ll eventually learn a lot. Believe me.

If you’re a ‘mobile’ person like I am – I would also recommend you a great Android app (not very pretty, but valuable) – LearnSQL. I was going through several free Android applications for SQL learning and this one was the best. Well done, chaps!

Where to find correct queries?

Try this website. It’s about SQLite, but the whole queries stuff is represented by simple graphics and allows you to learn more and to get familiar with all useful possibilities that SQL gives you.

So – your mission for today. Stop being dummy as I was and learn SQL. It is not as hard as you might think. Good luck!

Should you find other great SQL learning-related online stuff please let me know 🙂

kkksqlu