The Importance Of Mobile Quality Assurance

Mobile phones are being designed for the needs of urban warriors who want to do everything on the go. The mobile ecosystem has gone beyond the boundaries of telephony.

It records activities, provides event alerts, keeps users in touch with their personal lives and assists in business processes like closing transactions and completing payments. These advanced smartphone capabilities are giving rise to novel ways which addresses the needs of customers, employers and partners.

Mobile Application Marketplaces are becoming very popular day by day, and many companies are facilitating users to download various app. Websites are also being built as responsive for better browsing experience on various handheld devices.

Challenges of Mobile Application Testing :

Now-a-days, people are accessing the Internet and digital content in general more and more frequently from mobile rather than a traditional device. Mobile devices are built on a variety of operating systems that include multiple versions of iOS, Android, Windows, BlackBerry, Symbian, Bada and Brew, etc. Many years ago, the importance of Mobile Quality Assurance became apparent to the mobile development community.

Never miss an update from us. Join 10,000+ marketers and leaders.

Mobile Quality Assurance has needful key focus areas such as “Functionality”, “Performance”, “Usability”, “Automation”, “Security”, “Compatibility (Responsiveness)”, “Interface”, “Services” and “Device Proliferation”.

Mobile QA testing is nothing but a process by which mobile devices are being tested for its functionality, usability and consistency for better performance.

Mobile Application testing is categorized into two phases; such as “hardware or Device Testing” and “Software Testing”. Now this process is maximizing to support iPhone, Android, Windows Mobile, Symbian, Blackberry, tablets, including other operating systems with minimizing the testing cycle up to 50% as well.

As more and more mobile apps are coming out as well as Smartphones and it might be finding too many challenges or risks like variety of mobile devices, diversity in Mobile Platforms/OS, Mobile network operators and Scripting.

So, Mobile QA Testing is becoming very necessary part of Mobile Application Development Ecosystem.

Summary:

It is inescapable that your business will adopt mobile technologies to improve efficiency and become a regular business.

However, in a fast-changing mobile environment, application testing must be done in days instead of weeks, to ensure that your business remains agile, productivity is increased, time, money and customer satisfaction are not impacted.

I hope you liked this post. You must get a clear idea about the real challenges in mobile application testing. I would like to know your invaluable suggestion on this topic.

Recommended Blog: Andolasoft launched service on QA Automation

Why CMS Is So Popular Among Webmasters?

CMS (Content Management System) which came as blogging platform has evolved a lot and quickly won the heart of webmasters/entrepreneurs, and became the utmost choice for all types of websites, whether it would be basic content management site or massive ecommerce application one.

From the discovery of CMS, It begins a new battle between CMS and traditional website.

CMS-vs-traditional-website

Today, I am going to share few points why it is so popular among website owners.

Less dependency on developer and easy maintenance:

Once you develop theme or application on CMS you don’t have to rely on upon your developer excessively.

You can easily maintain and update your content even if you have very little or no knowledge of front- end languages, scripting languages, database or designing software.

On the other side if you go for traditional website, then you have to fully depend on your developer even for smaller to small changes.

 Saves Money and Time:

Most of CMS are Open Source. It simply means no need to pay a single penny for CMS installation on your domain.

As I said earlier that it is very easy to update content, publish page and lots of customization.

So it can be done by the webmaster himself without having any technical knowledge or without taking any help of developers.

In this manner, CMS helps to spare your expense as well as your time.

Search Engine friendly:

All modern CMS provide lots of plug-in which simplify your SEO task. However, custom website needs lots of attentions and work to make your application or website search engine friendly.

Provides Dynamic Platform:

Almost all CMS allow extensions like forum, poll, e-commerce application, blog management, video integration and lots more, which make the application dynamic.

However, if you go for dynamic HTML/CSS website require flash, animation and lots of Javascript code, which make your website slow and not so search engine friendly.

Huge Developer community and tutorial support:

One of the biggest concerns for many webmasters is that when they stuck they cannot take help developer’s community or tutorial guidelines.

So they don’t chose technology where it is hard to find proficient people on that technology. Whereas, all popular CMS provide community, which is quite large and it is extremely helpful to find experienced folks.

CMS also provide features like content scheduling and republishing, additional plugin that make your website compatible to any device, and third party integration; on the flip side you need lots of money and time to do the same on your traditional website.

If you think, CMS is an obvious champ, then again, you are wrong. Reasons, CMS itself as well as its plugins are open source, so they are highly vulnerable to all types of outside attackers.

It is strongly advisable to update your plugin and CMS version regularly and do the proper security testing for your application. Also after arrival of HTML5, traditional website design definitely took a big leap.

You can get free security testing report at no expense. At Andolasoft , we deliver customize and affordable wordpress support and development service.

No doubts the fight between CMS and Traditional website stays unending. Have something to add to this topic? Share it in the comments.

How To Install, Setup And Implement NodeJS In PHP Application

What Is NodeJS?

Typically in web response paradigm, the client always initiates communication, but with the help of NodeJS now both the client and server can initiate communication, allowing them to exchange data freely.

In simple words, after a database update the client needs to request the server to get the latest data. But using NodeJS, a client can send the updated data to NodeJS and the NodeJS will distribute the data across all the clients. So, no need to initiate request by each client to the server to get the latest data.

Where We Can Use NodeJS?

Below are the few examples where you can get the best out of Node.js,

  • A counter which updates after a record insert into database.
  • Show real-time activity like Twitter or Facebook.
  • Implement Desktop notification to notify users about what others are doing.
  • You can build a chatting tool using the non-blocking, event-driven I/O paradigm of NodeJS

Install And Setup NodeJS

  1. Install NodeJS and NPM
  2. Install socket.io using NPM
  3. Install Forever

Run the below notification.js file forever using the “Forever”. (it should not stop)

notification.js

var fs = require('fs');
/* If you are using SSL, uncomment the below lines*/
/*
var options = {
    key: fs.readFileSync('/var/www/html/YOUR_CERTIFICATE_FOLDER/your_project_key.key'),
    cert: fs.readFileSync('/var/www/html/YOUR_CERTIFICATE_FOLDER/your_project_crt.crt'),
    ca: fs.readFileSync('/var/www/html/YOUR_CERTIFICATE_FOLDER/your_project_ca-bundle.ca-bundle')
};
var app = require('https').createServer(options, handler);
*/

var app = require('http').createServer(handler); // For non-ssl server
var io = require('socket.io').listen(app);
app.listen(3002);
function handler (req, res) {
	res.writeHead(200);
	res.end("Welcome to socket.io.");
}
/** This section is for receiving and sending message **/
var Room;
io.sockets.on('connection', function (socket) {
	socket.on('subscribeTo', function (data) {
		if(Room){
			socket.leave(Room);
		}
		Room = data.channel;
		console.log('Connecting client to: '+data.channel);
		socket.join(data.channel);
	});
	socket.on('iotoserver', function (data) {
		console.log('here we are in action event and data is: \n-----------------------------------------------------');
		//var dataJSON = JSON.parse(data);
		//socket.broadcast.emit(dataJSON.channel, { message: 'A new socket added and sending message.' });
		socket.broadcast.to(data.channel).emit('iotoclient', { message: data.message });
		//io.sockets.in('game').emit('message', 'cool game');
		console.log(data);
	});
});

NOTE: Your Node.js should run with the port “3002”. Try to use another sub-domain/domain to call your Node.js server. Another server is always a good option.

Implement NodeJS In Your Application

Use Elephant.io (a socket.io client) to send message to NodeJS.
Get the ElephantIO package from, https://github.com/Wisembly/elephant.io/tree/master/src
You need the Client.php and the AbstractPayload.php file only.

<?php
use ElephantIO\Client as ElephantIOClient;
include("ElephantIO/Client.php");

$elephant = new ElephantIOClient('http://www.your-node-server.com:3002', 'socket.io', 1, false, false, true);
$elephant->setHandshakeTimeout(1000);
$elephant->init();
$elephant->send(
ElephantIOClient::TYPE_EVENT, null, null, json_encode(array('name' => 'iotoserver', 'args' => array('channel' => 'my_first_channel', 'message' => 'my message to all the online users')))
	);
$elephant->close();
?>

Put this JavaScript in the page, where you want to receive the real-time notification

<script src="http://cdnjs.cloudflare.com/ajax/libs/socket.io/0.9.16/socket.io.min.js"></script>
<script>
try{
  var client = io.connect('http://www.your-node-server.com:3002');
  
  client.on('connect',function (data) {
  	client.emit('subscribeTo', { channel: 'my_first_channel' });
  });
  
  client.on('iotoclient', function (data) {
    alert(data.message);
  });
} catch(e){
	console.log('Socket ERROR\n');
	console.log(e);
}
</script>

See Also: Creating a custom handler session in CakePHP 2.x

Are you looking to Install, setup and implement NodeJS in your PHP application? We are here to help you. We have experienced NodeJS developers to provide all types of JavaScript solutions. Let’s discuss

Like this blog? I’d love to hear about your thoughts on this. Thanks for sharing your comments.

How To Access Remote Amazon RDS With PHPMyAdmin

Amazon Relational Database Service (Amazon RDS) is a web service that makes it easy to set up, operate, and scale a relational database in the cloud. It provides cost-efficient and resizable capacity while managing time-consuming database management tasks, freeing you up to focus on your applications and business.

First of all we need to install PHPMyAdmin in ec2 instance (CentOS, Fedora, Amazon Linux AMI)

Step:1

First we need to enable the RPMforge repository on our CentOS system as PHPMyAdmin is not available in the official CentOS/Fedora/Amazon Linux AMI repositories:

Import the RPMforge GPG key:

# rpm --import  http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

On x86_64 systems:

#  yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

On i386 systems:

# yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm

Step:2

PHPMyAdmin can now be installed as follows:

# yum install phpmyadmin

Step:3

Now, we configure PHPMyAdmin. We change the Apache configuration so that PHPMyAdmin allows connections not just from localhost (by commenting out the <Directory “/usr/share/phpmyadmin”> stanza):

vi /etc/httpd/conf.d/phpmyadmin.conf
#
# Web application to manage MySQL
#
 
#<Directory "/usr/share/phpmyadmin">
# Order Deny, Allow
# Deny from all
# Allow from 127.0.0.1
#</Directory>
 
Alias /phpmyadmin /usr/share/phpmyadmin
Alias /phpMyAdmin /usr/share/phpmyadmin
Alias /mysqladmin /usr/share/phpmyadmin

Step:4

Next, we change the authentication in PHPMyAdmin from cookie to http: and host from local to RDS host url:

vi /usr/share/phpmyadmin/config.inc.php
[...]
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'http';
[...]
/* Server parameters */
$cfg['Servers'][$i]['host'] = '*******.******.us-east-1.rds.amazonaws.com';

Step:5

Restart Apache service:

# /etc/init.d/httpd restart

Step:6

Now we can browse RDS database.

# http://<IPADDRESS> /phpmyadmin

Or

# http://<Domain name>/phpmyadmin

Advantages Of PHPMyAdmin Over Command line Interface.

  • One of the advantages of using PHPMyAdmin is that it has a user interface and you can run queries within the SQL.
  • It is also used in checking referential integrity in MyISAM tables.
  • One can execute, edit and bookmark any SQL-statement, even batch-queries (This will work only in the latest version of PHPMyAdmin).
  • Multiple MySQL servers can be managed by PHPMyAdmin.
  • One can export data to various formats: CSV, SQL, XML, Excel and more.
  • Using Query-By-Example(QBE), create complex queries automatically connecting required tables.
  • One can Browse, view and drop databases, tables, views, fields and indexes.
  • It supports InnoDB tables and foreign keys.

Also See: How to install and configure Jaspersoft in Linux Server(RHEL/Centos/Fedora)

I hope you will find this useful. Feel free to give your valuable feedback.

If you want to update your traditional IT infrastructure to cloud computing, then you can hire expert cloud engineers from Andolasoft.