Friday, January 6, 2017

I embrace Ghostlab for Synchronized Web & Mobile Device Testing


Hey All, It's yet another time of a year to exhibit your fullest potential and capabilities to the testing world. Happy New Year folks.

I would love to publish my long pending blog post on Ghostlab mobile and web synchronizing tool which we implemented in late 2016. I'm up for new testing challenges in the new year 2017 too. :)
In testing career, one should always expect for new challenges. If not, you cannot make your work life interesting (at-least to me). Challenges won't make you feel like you're settled. Challenges will make you learn to lace up your running shoes and prepare for a healthy run. :)

Apparently, my last testing challenge was on March 7th 2011. It doesn't mean that I din't accept any other testing challenges. :) What it means is it may not be a noticeable challenge which led to right brain activity to innovate. Yes, I was challenged to report compatibility testing in a non-conventional way of an large consumer website. I used mind map and the test outcome were tremendous, check out on the Compatibility Test Report.

Likewise, on June 17th 2015,  I was asked to identify a FREE tool which could mirror Android and iOS devices over web to any geographical location (a similar tool like JoinMe, which is used over web). The challenge was to identify the tool in 60 minutes, check out how we accomplished the testing challenge. Click  here: I embrace Mobizen and iTools for mobile testing.

Eventually, on November 26th 2015 I received another interesting testing challenge. The challenge is to identify a tool which helps to set up mobile device lab in-house with real mobile device. I accepted the challenge and prepared myself to lace my shoes to explore new paths for a healthy run. :)

"Testing challenges makes your professional life beautiful. Overcoming them is what makes your testing career interesting" - Shiva Mathivanan



I now have a challenge to accomplish. I surfed for a while using search engines and with less hope, I customized a tweet to be able to fit into 140 characters and raised my query over Twitter. "Need Help - To set up open mobile test lab with 64 real mobile device in-house, is there any specific tool/references to support?. Fortunately, Mr. Hayk Hovhannisyan from @HaykAlientArt handle responded a html5rocks.com article which had a list of many useful tool that ease cross-device testing workflow in real time environment. I started using few tools and finally decided to implement Ghostlab. Because Ghostlab is very easy to install & configure provided you have a high bandwidth on WiFi network connectivity at your organization. My sincere thanks to Hayk Hovhannisyan for sharing his piece of knowledge. I deliberately wanted to implement the Ghostlab and then wanted to communicate to the testing world if the result is fruitful




Yes, we have successfully implemented in-house mobile device testing lab at our organization, Yay!


If you're someone who would like to implement Mobile Lab using Ghostlab, then please continue to read else feel free to wish me for my accomplishment using comments section. Ha Ha. :D (Just kidding)
  
Let's dig deep into technical part of Ghostlab
 
What is Ghostlab?
Now a day’s most of the application are designed to be compatible with Mobile and Cross Browser (thanks to HTML5 – responsive design). In fact those sites which are not mobile compatible is hard to find a place in google search result. When it comes to QA testing the biggest time consuming job is to perform compatibility testing in multi-device and multi-browser. This is almost eating anywhere around 10 to 25% of overall testing effort. Currently we need to manually load the URL and perform the testing activity in each device and in each browser to make sure that the application is compatible with all the necessary devices and browsers.
How can we make it simple? The answer as on today is Synchronized Testing.  It can help solve two particularly time-consuming problems:
  1. Keeping all the devices and browsers in sync with the URL we want to test.
  2. Synchronizing interactions
There are many tools available to address the above problem and to name few
  1.  Ghostlab
  2. Adobe Edge Inspect
  3. Remote Preview and many more.
Why Ghostlab is better?
It is very easy to configure the Ghostlab Tool, Your Ghostlab installation file runs on the server and all mobile clients do not require any installations at all. It is very user friendly with very minimal lag time when comparing to other tools. It is available with competitive pricing.

What Ghostlab Does?
Using Ghostlab we can test any website on various browsers and mobile devices simultaneously. In order to perform cross-browser compatibility testing just drag the URL into Ghostlab and click the “Play” button or use the handy QR code to connect to a mobile device. (QR barcode reader app should be installed in mobile device). When we start to test in one of the connected browsers or devices. All other browsers and devices will mirror your actions. That’s clicking buttons, following links, scrolling the page, hovering your mouse over special elements like flyouts, filling out forms etc.

Ghostlab Prerequisites
  1. To download & install free 7-day trial version from VANAMCO, click on https://www.vanamco.com/ghostlab/ Or you can buy Ghostlab Licensed version and install in server machine.
  2. To have necessary web browsers (Chrome, FF, IE, Opera and Safari) to be installed in the server machine.
  3. To have all mobile devices fully charged and up and running.
  4. To have all mobile devices to set sleep mode to “Never” in iOS devices and in Android select any longer duration.
  5. To have all mobile devices Turn off the auto-lock.
  6. To have strong Wi-Fi network connectivity to support ample number of mobile devices and web browser access.
  7. To ensure Ghostlab server machine and all mobile device are connected to same Wi-Fi network using authenticated credential.
  8. Need to install QR barcode reader software in the mobile devices for loading the URL directly in the device browsers.
  9. Application Under Test (AUT) should be accessible from your system. If not able to launch your application from your machine, then raise a ticket with IT support team and get it resolved. (Probably you might need to add application IP address to your host file).
  10. All the real hand-held mobile device which are required to perform your mobile device testing should be in place under Wi-Fi network.
How to Set up Ghostlab?
Once you are prerequisite installations are ready, you need to follow the below procedures to install and configure your application using Ghostlab.
1. How to Configure Ghostlab Server
  • Launch Ghostlab Tool from server machine.
  • Once loaded, Click on the ‘+’ icon
  • Enter Application Under Test (AUT) URL in the “Enter URL or browse for local directory” text box, example: http://www.google.com
  • Click on the tick-button from the top-left of your screen or press Enter button in your keyboard
  • Ensure AUT is added properly, you can also simply drag and drop the URL into the Ghostlab from a web browser. See Figure-1

Figure-1
  • You can add as many as sites in Ghostlab. Please make sure that all the necessary details are added in your host file before accessing the application
2. How to Start Ghostlab Server
After successfully configuring the Ghostlab server machine, we are ready for synchronized testing across  various web browsers and devices. To start the Ghostlab server, 
  • Click on the “Run” button, at the right corner, See Figure-2.
Figure-2

Figure-3

3. Launch the Application under Test
  • Once the server starts to run the application URL, Click on Launch button, See Figure-3.
  • Now the application will launch in default browser.
  • Click on the option button below settings icon. This option allows you to select the browsers which are installed in your system, see Figure-3
Figure-3

  • Click on respective browser from list of browsers displayed to launch specific browser, example FF or Chrome or IE versions, See Figure-4. The list of browsers installed in Ghostlab server will be displayed below the launched URL.
 Figure-4
 4. How to Stop Ghostlab Server?
Click on the stop server icon next to the settings icon to instruct the server the quit the server. Once the server is stopped the launched URL can no more be used until the user launches the website again. See Figure-5

Figure-5

5. How to inspect Page Source HTML5 Elements?
At respective browser, click on the tag on the right corner and inspect page elements as per requirements. See Figure-6.
Figure-6


6. How to Replace Launched Website URL?

 Click on the settings icon and replace with respective URL to relaunch and host new website for testing and tab out, example: http://www.yahoo.com. See Figure-7
                                                                          Figure-7


Now, click on stop and re-run to launch replaced website URL. See Figure-8.
 Figure-8

7. How to Remove Launched Website?
  • Click on the “-“ icon next to the “+” icon and then
  • Click on the delete icon, to remove an launched website from the list of websites and then
  • Click on delete button to remove the application from Ghostlab permanently. See Figure-9
Figure-9

8. Understand Test Cases for Cross-browser Testing
In order to execute Ghostlab web browser and mobile device browser synchronizing testing, you must need your requirements on version of browser and ios/android platforms in the first place to execute your cross browser testing. Ghostlab will not verify anything on its own. The responsive UI design issues should be addressed based on your customer and customer's customer requirements as well. We have to look for the most prominent mobile browser that your application would run on and the most prominent web browser version and operating system platform and then have them installed in the first place before executing your test cases.

Regards,
Shiva Mathivanan

Wednesday, June 17, 2015

I embrace Mobizen and iTools for mobile testing

Hey All, It's been a long time that I have blogged here. I honestly apologize if you were curiously looking for articles to read from my blog and later realized that I did not post any new articles and otherwise as well ;) . I always wanted to write about testing, but something kept bragging me. Maybe, its because of my way of thinking style. Yes, I love to write/share about testing only if I learn something new, useful and interesting (at least to me) at work. Indeed I do read a lot from my testing mentors and other bloggers as well. So, with no more excuses I wanted to share an important testing lesson that I have learnt, yesterday. With no delay, let me share my challenging testing experience.

What is the testing challenge?
As a team we had a testing challenge. To identify a FREE tool in 60 minutes. The tool needs to mirror Android and iOS devices over web and can view from any geographical location.

Let the Game Begin:
Everyone was asked to go back to our seat locations and the game started. All the team members initially thought it is really easy to identify the tool at the very first moment. Later during the course of identifying the app we found that it is taking more time & effort. Is this an easy challenge? No :( What's Next?
  • Someone from our team started to phone a friend who works in Mobile team from another company to ask for help.
  • Other guy bumped along sending emails to his testing communities in other states and countries to seek help.
  • Another colleague, shouted hey you - Google my friend here I come :). She started to surf over internet to look for free tools.
  • A newbie who just joined said - OK, so everyone at least started to do something, let me observe what each one is trying to do. :)
Gone in 60 minutes:
Yes, the time came to an end after a rigorous 60 minutes search to exhibit individual's test analysis report to the team. The outcome was really fascinating. Team projected several tool name which can mirror your Android devices to PC like MirrorOPSenderChromecast app, Mirror Beta app, Mirroring360, Mobizen and other iOS tools such as Reflector, Airserver, X-Mirage, iDisplay, iTools etc. However, the drawback was most of the tool is not free and if its free it had its own limitations of installing and using it only for 7 days or the installation was not successful. Tools like Airplay works perfectly fine when all devices were connected on the same network over same WiFi. Not all tools but most of the tools dint work upto the testing challenge. Someone from the team shouted - Look here, I can view my mobile in my PC and I can control my device via PC too. Hurray!


Purpose Resolved:
The end result of the research and analysis of identifying a tool which could support our need is really fruitful. Yes, Mobizen for Android and iTools for iOS is an easy to install tool. We should install the apps in the device and PC respectively to use it, That's All Folks!
  • The purpose of this challenge is to help our clients view our mobile device screen onto his PC from any geographical location. In simple words If you had used Joinme and enjoyed the screen sharing from your PC then you would definitely feel it similar when you start using Mobizen for Android devices and iTools for iOS 8.1 and above devices - It's so easy to install and use.
Lessons Learnt:
  • If we want to reproduce a bug from a mobile device and showcase it to a product owner who don't have an handy mobile device but can access a web url from PC, we can use these apps.
  • If we want to showcase "User Acceptance Testing" of a particular functional module over web, which details how to do UAT from a user perspective, we can use these apps.
  • If we found an intermittent defect and if the developer is really curious to know more about it, inform him and have him view it from his desk for quite some time and try reproducing.
  • If we want to demo the latest build version of new feature implementations to your clients after QA-Sign Off, we can use these apps.
  • Mobizen for Android, works in a way where we can control our device from our personal computer (PC). Example, I switched on "flashlight" of the Mobizen connected mobile device from my PC. The real HTC Android mobile device was with my colleague who was 50 meters apart and got surprised. He never know I was about to switch flashlight ON. :)

Regards,
Shiva Mathivanan

P:S: There are lot of articles already available to demonstrate how to install and use the mirroring applications. Thus I have not provided any installation guide. I have suggested Mobizen for Android devices and iTools for iOS 8.1 and above devices which is very easy to install and also have provided the benefits of such mirroring applications. Please write to me for any queries. Thank you.

Thursday, August 15, 2013

Visual Studio Test Professional 2013

On 15th August 1947 India got independence. Today we are celebrating 67th Independence day as proud citizens of India. I'm happy to publish a blog post today after quite a long time on India's special day. So Happy Independence Day 2013 folks. :)

This post is not about Independence day, It is more about Visual Studio Test Professional 2013 the tool I have been using for a long period on test case management and test automation. I would like to share the benefits that I see in this post. This tool provides end-to-end traceability to gain a complete view of the progress, quality of each requirement, tracking test case, tested product backlog items, test cases to business goals, conduct, record, repeat manual tests, manage test environments, communicate measurable requirements using acceptance tests, associated automation. It helps a lot for being Agile. Read more! The Visual Studio Test Professional actually sits on Visual Studio Team Foundation Server.

Now I would like to talk about Visual Studio Team Foundation Server. The TFS, Team Foundation Server will manage your code with state of the art version control, links change to integrated work item tracking, Increases visibility of project with Team Web Access, centralize all roles in a single repository, collaborate in context to increase visibility, reduce hand-off waste, adopt agile techniques to become more effective, reconcile the agile team with your company's project management, continuously monitor the progress of the project, follow your requirements through their complete life cycle, seamlessly integrate test solutions, implement continuous integration to reduce risks in project. Read more! TFS automates and streamlines the software delivery process, as well as provides full traceability and real-time visibility into project status, for all team members, with powerful reporting tools and dashboards. Lab Management Delivering high-quality applications requires thorough testing of application code.

It is important to understand about TFS when we learn about Visual Studio Test Professional which is a boon for testers, at least to me as a tester!. Now coming back to the topic we discussed already is about the Visual Studio Test Professional which offers a full suite of management tools, including Test Manager which has Testing Center and Lab Center.

Testing Center helps us to create Test Plan, Test Suites, Test Cases in the Plan tab. Test tab helps to run, analyze, do exploratory testing, view exploratory test sessions and verify bugs. Track tab helps us to query, assign builds. Organize tab helps organizing the Test Plans, Manages Test Configurations, Test Cases and Shared Steps. Read more!

Testing Center
Visual Studio Test Professional - Testing Center
Lab Center helps to create lab environments on which you run your test professional manual tests. There are two kinds of environments: standard and SCVMM environments. A standard environment can use physical computers or virtual machines, and the virtual machines can run on any virtualization framework. An SCVMM environment uses only virtual machines that are managed by System Center Virtual Machine Manager (SCVMM). Microsoft Test professional can be used to set up both kinds of environment. In the case an SCVMM environment, you can stop and start environments, store environments in a library, and create multiple copies o
f them. In both cases, you assign roles to each machine in the environment. For example, typical roles are Web Server and Desktop Client. The role names are used by your test workflow to determine what software and tests to deploy on each machine. Test Professional inserts a test agent on each computer, which enables the test controller to deploy software, run tests, and collect test results. Read more!
Visual Studio Test Professional - Lab Center
Test Runner is something we use under Test tab from Testing Center which helps to run manual tests. If you are someone like me who execute the test case scenarios from Microsoft Excel document, you would be more interested to run it through Microsoft Test Professional's Test Runner. The test resolutions or comments can be provided during your test run and can be saved as test results. Can create bugs on the go by failing the test step. Read more!

Test Runner

The most important feature that I like is performing Exploratory Testing using Microsoft Test manager, starting an exploratory test session, exploring the application, report bugs, makes re-testing easy. Read more! I'm done with my sharing of Visual Studio Test Professional 2013, if possible try at your end of how this tool fits your purpose. Please rely more on http://www.msdn.microsoft.com for more information on this tool. Thank you!
Best Regards,
Shiva Mathivanan

Disclaimer: For now I like to use this Microsoft Tool to a greater extent to explore more on its fullest usage. I too have some limitations in using all of its features regarding automation, due to many reasons. As far as manual testing is considered this is a good tool. However I'm still exploring to find it to be a good automation tool. I have pen down my thoughts and its too personal. Hope it helps newbies to learn at least something. :)