Currently Browsing

Mobile

Can Chrome DevTools’ Device Mode be substitute for the Real device?

Every tester probably heard about Chrome Device Mode, if you didn’t, don’t worry, we will try to introduce you with it.
 
Open the Chrome DevTools and Toggle the Device Mode button Device Mode to turn Device Mode on or off. Device Mode will emulate your site across different screen sizes and resolutions. In Viewport Controls you can change the device for emulation or you can make your own custom device presets.
 
ViewportControls
It’s a very simple tool and easy to use, but if you need more details check out Google’s directions.

Make your manual testing faster with Vysor

Testing Android devices can be frustrating. Entering long texts, taking screenshots and screen recordings, transferring files from the Android device to PC, losing time just with putting down – picking up the deviceScreen capture from Vysor. All these things can be forgotten if You could use the Android device on your PC.
 
There are many apps available for screen mirroring and Vysor is one of them. Vysor is a Chrome extension developed by ClockworkMod. Because it’s a Chrome extension it is compatible with almost all operating system and devices. Vysor works using ADB (Android Debug Bridge). The Chrome app automatically detects any ADB-enabled device connected to the computer. With a few simple steps the phone or tablet screen will be available on the PC with full control over it. It has a free and a paid version. Free version, with screen mirroring and screenshotting, is probably enough for most of the users. If you want some more functionalities like higher quality mirroring, fullscreen mode, sharing, drag and drop option, paid version is for you.

 

How to set up Vysor?

Usertesting

Few days ago I find this interesting service – https://www.usertesting.com/. Checked it. I will now share my experience here.

Why is this interesting?

Besides the usual testing (sometimes done only by developers) the user feedback is very important! Your site can look good, but if it is hard to use, users won’t love your site and this can cost much.
So how to get real users to test what I need to be tested on my site?

Usertesting pay users to test their client’s website and tell all about the website what they see during completing the assigned test.

Ok, how can I become a tester?

Amazon web services – Device Farm

Device Farm is an app testing service that enables you to test your Android, iOS, and Fire OS apps on real, physical phones and tablets that are hosted by Amazon Web Services (AWS). Currently Device Farm allows you to run your own tests or built-in compatibility tests parallelly on the selected devices. The list below contains the test types on various platforms (from amazon.com):

Basic tutorial to setup a new project and test run

Once you are signed in, go to Amazon Console and click on Device Farm. Click on the Create New Project button and enter desired name for your project. Click on a newly created project and you will be automatically redirected to “Create new run” page. Upload your application what you want to test and click on the “Next step” to choose your test run type.

Change iOS Settings on virtual device with Appium

In our previous post we introduced the steps to set up your Appium environment for iOS 9 devices. In this post we will write about how can you open the Settings app and do some changes in it. We will use Java as programming language, Eclipse for IDE and JUnit as runner.

Ok, so first step is to get the Java client of Selenium from www.seleniumhq.org/download/. Extract the downloaded *.zip file, create a new Java Project in Eclipse and add all extracted *.jar files to Build Path. Now, we can start to implement our first test case for iOS device where we will open the Settings app and disable the Location Service on iPhone. As we mentioned above, we will use JUnit as runner, but you can also choose TestNG or just create a standard Java program with the main() function.

Let’s create a before() method with annotation @Before where we will set up all of the necessary things for the desired test case.

Setting up Appium on Mac OS X for iOS virtual devices to test your application

In this post we will introduce the basic setup of Appium to work with iOS devices. We will go through with detailed steps, so you can skip some of those if you are familiar with.

For start you need to install Xcode. Go to the App Store, type Xcode, hit the download button and grab a coffee, it will take some time. Next step is to install Xcode command line tools. Open your default terminal application (Terminal, iTerm, etc.) and enter xcode-select –install. Click on Install button on the presented popup.
Xcode-Select modal
Agree the fine print, wait for the components to be installed and click on Done. Don’t forget to accept the license and agreements of Xcode. Simply start Xcode, accept the licenses and wait for the components to be installed. Now we are able to start our iPhone/iPad simulator so if you want to try it out, switch to your Xcode and choose Xcode/Open Developer Tool/Simulator. The downside is that you will have just iOS 9 installed, and you can’t change it to the older version. Next chapter is to install Appium and required packages.

Getting started with Android automation testing

As the automation testing is more and more present in the development of web and desktop applications it is also taking more place in the mobile world. There are various tools and frameworks helping the testers out the job.
First of all it is necessary to get the Android SDK and those API levels which are running on the target devices. Check this link for Android SDK: http://developer.android.com/sdk/index.html. The recommended IDE for android development is the Android Studio, however the example in this guide is written in Eclipse. To add the android plugin to Eclipse follow this guide: http://developer.android.com/sdk/installing/installing-adt.html#Download.

It is possible to run the test cases both on real and virtual devices. In the case if the target device is a virtual one there are two options. The first and more traditional way is using the android emulator which comes with the SDK or the other one is using Genymotion.

Genymotion is an emulator offers the same functionality as the traditional one and even more, beside that the boot of these devices is much faster. It can definitely improve the performance of the tests. You can download here: https://www.genymotion.com/#!/store. It is recommend to add the Genymotion plugin to Eclipse to make the job easier. Find the details on this page: https://www.genymotion.com/#!/download#genymotion-eclipse.

Emulate mobile and tablet devices with ChromeDriver

Desktop version of Google Chrome allows to users to open webpages in mobile view. This means that you can emulate browsing on devices like Google Nexus 5, Apple iPhone 6 etc. You can find this feature in developer tools by clicking on the mobile icon.

Mobile emulation button

Mobile emulation button

Now ChromeDriver allows to use device emulation in automated tests also. This feature speeds up web development, allows developers to quickly test how a website will render on a mobile device, without requiring a real device or a virtual machine. You can find more information about it on the following link https://developer.chrome.com/devtools/docs/device-mode. The setup is very easy and it’s working really well. Below you can find a little test case which will introduce to you how to use ChromeDriver for emulate a mobile device and tablet. The test case simply enters “what is my browser” into the google search page, clicks on the first result and checks the device type what will be present on the website.

@DataProvider(name = "deviceName")
	public Object[][] deviceNames(){
		return new Object[][] {
				{"Google Nexus 5", "LG Nexus 5"},
				{"Apple iPhone 6", "Apple iPhone"},
				{"Google Nexus 10", "Samsung Nexus 10"}
		};
	}

	@Test(dataProvider = "deviceName")
	public void mobileEmulation(String deviceName, String deviceNameWhatIsMyBrowser){
		Map<String, String> mobileEmulation = new HashMap<String, String>();
		mobileEmulation.put("deviceName", deviceName);

		Map<String, Object> chromeOptions = new HashMap<String, Object>();
		chromeOptions.put("mobileEmulation", mobileEmulation);
		DesiredCapabilities capabilities = DesiredCapabilities.chrome();
		capabilities.setCapability(ChromeOptions.CAPABILITY, chromeOptions);
		WebDriver driver = new ChromeDriver(capabilities);

		driver.get("http://www.google.com/ncr");
		//Enter my search
		driver.findElement(By.cssSelector("#lst-ib")).sendKeys("what is my browser");
		//Click on search button
		driver.findElement(By.cssSelector("#tsbb")).click();
		//Click on the first found result
		driver.findElement(By.xpath("//h3[@class='r']/a[text()='What browser am I using? Is my browser up to date? Web browser ...']")).click();
		//Get the device name from the website
		String deviceNameFromWebsite = driver.findElement(By.cssSelector(".string-extra-info")).getText();
		//Check the device name from the website
		Assert.assertEquals(deviceNameFromWebsite, deviceNameWhatIsMyBrowser, "The device name is not the expected one.");
		
		driver.quit();
	}	

Ranorex – is this tool the tester heaven?

What is Ranorex? Is this a medicine? 🙂

Ranorex is an automated testing tool which provides testing of Microsoft desktop apps, webpages and mobile applications. It supports wide range of technologies like .NET, WFA, WPF, Java, HTML5, Flash, iOS, Android, Windows apps (hybrid and native) and so on. You can perform cross-browser, data-driven, automated functional, regression, automated GUI and keyword-driver testing. The Ranorex software pack can be classified into a few big parts. Ranorex Studio is the main section. Ranorex Studio contains the main tools like Ranorex Recorder, Ranorex Repository and RanoreXPath. In this post we will introduce them generally in different sections.

Ranorex Studio

Ranorex Studio is the heart of the Ranorex ecosystem. If you are familiar with Microsoft’s Visual Studio you will know immediately how to use it. It has the same layout like Visual Studio 2008/2010.

Main view of the Ranorex studio

Main view of the Ranorex studio

Genymotion review

Genymotion is an Android tablet and phone emulator from the company Genymobile. It is available for Mac OS, Windows (x64/x86) and Linux platforms.

The description on the product page describing it as “Fast, simple and powerful” certainly fits it well. It boasts considerable speed, leaving its competitors in the dust. It boasts quite a number of pre-configured devices including Samsung Galaxy, Google Nexus, and Sony Xperia series of phones. You can also make a custom phone or tablet to suit your needs. The paid version offers additional powerful functions.