Hello! I'm Chamal Asela Perera.

I test code for living.

Welcome to the iOS 9

Update: Apple released another update to the iOS 9 ( iOS 9.1 Public Beta 1 ) on 9th of September Along with the other Mac operating systems, Apple decided to release another operating system update to iOS devices. Like the El Capitan, this is not officially released to the public. But can access the features through the Apple beta software program.

This is all what you need to know If you are going to update your iPhone to the iOS9

First thing first,

  • You need to have Apple ID If you don’t have Apple ID, You can easily create a one from here.
  • Archive an iOS backup with iTunes – You are about to install a pre-release operating system. It is always advisory to backup the content. In case, If anything goes wrong, You will be able to restore the backup easily.

Righto, If you are done with above two steps. It’s the time to update.

  1. Go to beta.apple.com/profile web site from your iOS device and download the configuration profile. On screen installation guide will be there till you download the configuration profile.
  2. Tap Settings -> General -> Software Update to install the available beta software ( iOS devices running iOS 8.1.X or later will automatically receive the latest public beta )
  3. Tap on the Download button to download the iOS 9 Public Beta iOS 9 file size is around 1.2 GB, So it will take some time download
  4. Once it downloaded, agree to the Terms and Conditions and continue to install the iOS 9
  5. Installation will verify the update and will start to install.
  6. Device will be turn off for few time and it would take around 10 minutes to complete the full installation.

Then you are good to go with iOS 9

Hello El Capitan

As mentioned in a previous post, Latest Mac OS is now released to the public. It’s still in the beta version, So we can expect more unexpected circumstances. I had the luxury to install the new operating system on a Mac book Air and the experience was pretty good ( which I will save for another post ), Today is the day to welcome El Capitan.

Things  you need to have 

  • Apple computer – Of course where else would you install a Mac OS
  • Data Backup Plan – As we are dealing with a beta operating system, we need to make sure the safety of data. Like always, Backup of your data will save your from trouble. You can use Apple Time Machine feature for this.
  • Apple ID – This is needed to be enroll in the apple beta software program. If you don’t have an apple ID, You can create it from here
  • Good Internet connection – El-Capitan OS contains 6GB of files, So a good internet connection will surely avoid slow-internet-connection-disappointments.

That’s it, That”s all we need.

1. Go to the Apple beta program

2. Login with your Apple ID

3. Scroll down and find the ‘enroll your mac’ link


4. You will find a download link with the redemption code on the next screen.

When you click on the download link, Mac App Store will open with your redemption code already entered, and the download will begin automatically.When the download finish, Installation launcher will automatically launch.

Now it’s the time check your patience. Size of the operating system will be around 6GB so it would take some time to download.

In the installation process, Your Mac will automatically restart few times and it would take roughly around 15-20 minutes to complete the installation process.

Then you are good to go. Ladies and Gentlemen, Please welcome El-Capitan !

Windows Update Cannot Check For Updates ?

Rather quick post about a problem which I’ve encountered recently when I tried to set up a test environment of Windows 7 machine, I wanted to have a test machine with the latest windows updates. Each time I tried to update the test machine, I couldn’t go beyond the below screen, which was very annoying, considering the time I tried to do this task.

Google suggested few alternative ways to overcome the issue ( like restarting the windows update service from command prompt ) but sadly none of them were working form me.

Finally when I tried to give up updating my test machine, noticed a solution posted on a thread which actually worked for me. Here’s what you actually need to do If you ever encounter such a problem.

  1. Goto start > type services.msc
  2. Scroll down to find Windows Update service
  3. make sure Windows Update service is stopped, else right click and stop it
  4. Go to C:WindowsSoftwareDistribution and delete all files in it
  5. Come back to services.msc and start Windows Updateservice


Here’s the link to the original post 

OS X El Capitan

El Capitan ( pronounced as el kap-i-tan ) is the latest Mac OS introduced by Apple. Official public release of El Capitan is coming on this fall, but Apple already released two developer versions and the first public beta release scheduled on next month.  Apple has released the public beta version of El-Capitan OS along with IOS 9 release on 9th of July.Apple has introduced couple of exciting features to this new OS along with bug fixes and performance improvements to the existing OSs. Below are some of very momentous features of El Capitan.

  • Split view

How cool would it be If a user can quickly split the screen space between two running apps?That feature is available in new OS<

  • Mission controller with multiple desktops

This is more likely the VirtuaWin software which used by Windows users. This would give the benefit for users to spot the apps they are looking for, even they are stacked on top of other.

There are more improvements done to the Sportlight / Safari- Browser and Photos as well. You can read more about those features on MacWorld

Mobile Test Automation – Appium – Part I

Appium is an open source test automation framework for use with native, mobile web and hybrid mobile app. I found couple of interesting articles regarding this and it kept me excited, so I’ve decided to take a look.

Before going in to the configuration section, let’s just go through how Appium developed and the basic pillars of the Appium.

Appium is a cross-platform tool, it allows you to write tests against multiple platforms (iOS/Android/ Windows) using the same API. Also it enables the code reuse between iOS / Android platforms.  You shouldn’t have to recompile your app / or modify it in any way in order to automate it. Appium use the vendor provided frameworks from the main vendors who produces mobiles such as Apple / Google / Windows.

  1. You shouldn’t have to recompile app / or modify in in any way in order to automate it – Appium use the vendor provided frameworks from the main vendors who produces mobiles such as Apple / Google / Windows. So we don’t need to compile any Appium specific or third party code to the app.
  2. You shouldn’t be locked into specific language/ or framework to write and run your tests. – Appium wraps the vendor provided frameworks in one API (Web Driver API – Selenium Web Driver ) This specifies the client- server architecture, a client written any language can be used to send HTTP requests to the server.
  3. A mobile automation framework shouldn’t reinvent the wheel when it comes to automation APIs. – WebDriver has the standard for automating web browsers, it has extend the protocol with extra API methods which can be used to mobile automation
  4. A mobile automation framework should be open source, in spirit and practices as well as in name. – Appium is an open source project

More on configuration later 🙂

Working with a Mac OS – 1

For the last couple of days I had the luxury to work with Mac devices, which was bit tedious at first. However just like the other cases, It gets quite interesting once you know more about Mac OSs. Here in this blog post, I would like to share few tips which could helpful for anyone who are about to start working on Mac OSs.

Note – I’m using Yosemite OS and Mavericks OS to perform all these tasks.

Taking a screenshot

This is not Windows OS. So obviously, ALT + Print Screen combination won’t work, In fact there are no Print Screen button available in Mac keyboards. But Mac keyboard has a unique key just as in Windows keyboards, that is Command key – with a symbol of bowan knot, which can be use to take screenshots.

In order to take a screenshot,

  1. Press Command Key + Shift Key + 3 ( Number 3 on the keyboard ) at once.

Screenshot will be saved to desktop automatically.

  • Taking a screenshot on a specific place.

As a testers, Most of times we need to take a screenshot of certain places on the screen. ( Example is where UI elements are not properly aligned on a web page )  You can achieve that task by following below method,

  1. Press Command Key + Shift Key + 4 ( Number 4 on the keyboard ) at once.
  2. You’ll see that the mouse pointer turns to icon which looks like a ‘target’. 
  3. Take the mouse pointer to the specific place where you want to get the screenshot.
  4. Just like using the crop functionality in Windows- Paint, crop the area  you wanted to take.

Cropped area will be saved to desktop automatically.

Software Testing 101 : Unit Testing

Before even go further, I must emphasize that even though I’ve listed this under the Software Testing 101 article series, This is not a testing type performed by the QA Engineers. Unit testing is performed by Developers.Unit Testing : In this phrase, a unit can refer to a function, individual program or even procedure. Biggest advantage is that by performing this, we can identify the whether the application functions as designed in the early phase. Also it can be run every time a piece of code is changed.

Bugs can be found early as possible by adding unit testing to the software development process ( or even to the CI : Continuous Integration process ). Unit tests normally runs on every day, So whenever there is a code break, It will notify to the relevant party, before it goes to the QA team.

Software Testing 101 : Testing types

Today I’m going to talk about one of the widely used to testing type. That is Regression Test.

According to ISTQB (International Software Testing Quality Board), Regression testing is,

Testing of a previously tested program following modification to ensure  that defects have not been introduced or uncovered in unchanged areas of the software, as a result of the changes made. It is performed when the software or its environment is changed.

What is the purpose of the Regression Test?

The purpose of Regression Testing is to verify, if code change introduces issues/defects into the existing functionality. There are so many kinds of possible changes that can impact the existing functionality in an application system. Even the simplest change to the code could impact previously tested functionality.

When should you use Regression Tests?

As in the definition says, Regression testing should occur when code changes are made to a previously tested application. Regression test plan can help to identify the areas of focus/ important areas for the client. This can be created from the input from development team/ QA Team and  client.

Regression testing can occur in :

  1. New features are introduced.
  2. Defects/Issues are fixed.
  3. Database changes

More importantly, Regression testing is a strong candidate for Test Automation.



ISTQB® –This might be the most widely used word in QA community, probably after ‘bug’ ( or ‘Automation’ ) 😉

What is ISTQB?

ISTQB stands for International Software Testing Qualifications Board. They are offering set of examinations to evaluate QA professionals across the world. So basically, It’s like SCJP OCJP for Java Developers or MCTS for .NET developers.

Why people prefer to do ISTQB examination ?

Apart from using the title after your name, there are some actual benefits that you could gain by doing this examination.

How It works? 

Right, This is the examination path defined by ISTQB. There are two main categories/ exam types. Foundation Level and Advanced Level. Advanced level has 03 different categories ( Test Manager / Test Analyst /Technical Test Analyst )

Right, Sounds Interesting. How much Do I need to pay ?

You have to pay around 15,000 Rs (For the foundation level exams) and around 25,000 Rs (for the Advanced level examinations). Please note that examination cost are subject to change.

Registration procedure is pretty is simple.

1.Contact agent from Sri Lanka Software Testing Board
2.Pay for exam
3.Study & do the exam
4.Wait for the results ( This may take around 2 weeks )
5.Get the certificate

Cross browser testing

A web application that behaves precisely as expected in one web browser might have some issues when run in another web browser. Application might work well in Google Chrome but not in Safari or in Firefox. Reasons for this is that different browsers render the applets, JavaScript, Flash, AJAX requests in different ways.

It’s very important as a QA professional to do a cross browser testing for a website. Recently I had the chance to dig more into this as I got an assignment with regard to this. Here are my findings in this area.

How do you conduct a cross browser testing?

Most simple way or the most common way to start would be to develop a set of check list of the functions that web site must perform & then methodically open up the web site in multiple browsers to very against the checklist.


There are some commercial tools such as BrowserStack, SauceLabs which have the capability to do the cross browser testing. These tools also can be used for the test Automation.