Thursday, May 31, 2018

Creating a test automation framework architecture with selenium

Introduction to SAF (Selenium Automated Framework)

Automation technologies improve test coverage and yield higher quality products. They save thousands of manual test execution hours, significantly reducing costs. SAF is a customized framework developed using Selenium, a widely accepted web application automation tool. It shrinks test cycle times and related costs. Selenium is a portable software testing framework for web applications. The tests can be written as HTML tables or coded in a number of popular programming languages. They can be run directly in most modern web browsers. Selenium can be deployed on Windows, Linux and Macintosh.

Selenium Automated Framework (SAF)

SAF increases automation efficiency by minimizing initial coding effort. It is a script-less framework used for test automation of web applications that are developed on .Net, Java / J2EE, AJAX. The framework provides a platform to implement data driven and Hybrid – keyword + data driven – framework by spreadsheet template. It can be used in your current automation project. SAF helps enterprises speed up testing using accelerators at the test design layer while keeping the automation suite flexible to interface with commercial tools, whenever needed. The test framework provides a comprehensive reporting dashboard for managing tests.

Features of SAF
  • Intuitive, user-friendly interface for creation and execution of test suites 
  • Robust, flexible and extensible framework and support test automation on diverse sets of web applications across domains 
  • Programmatic generation of functional test cases and test suites 
  • Integration for dynamic and flexible grouping of test suites 
  • Schedulers for test execution and test report mailing 
  • Enables users to perform functional, acceptance and compatibility testing for most web applications 
  • Automated HTML report generation and emailing of the same to all stake holders 
  • Detailed test execution results with consolidated summary and error snapshots 
  • Supports concurrent-related bugs detection
Benefits of SAF
  • Built on open source tools / libraries / frameworks to reduce overall costs for customers 
  • Increases flexibility of time and resources 
  • Avoid redundancy on test execution 
  • Increases test coverage to enhance the quality and reliability of the end product 
  • Enables quick updates and shorter learning curve due to our high interaction with Selenium user community 
For more information you can refer this video




M.T.V.V. Perera
ICT/2014/2015/029



Saturday, May 12, 2018

Literature Research

The idea of virtual reality is the provision of the basement of augmented reality. It is not just easily presented and applied in real world applications and purposes, unless is justified and proclaimed by the experts of the field, after engaging in complex and accurate implementation tests. [1] These tests made sure that they provide most accurate results with scientifically and technically accepted standards and techniques in order to provide the accuracy, correctness and the validity as the most important non- functional requirements to be needed in the application of the real world causes.
The software framework that is proposed in the project will be authenticated with two main sub systems.[4] The first one is the input method of the entire system that provides the inputs to the software framework and the second one is the image processing method that measures the user inputs aligning to the accuracy and compatibility both as a feedback and a rating.
The input method that facilitates the user to provide the system with the user commands will be provided by the smart glove that follows the IOT technology in the means of Arduino and the sensors we use will follow the Hall Effect [5]. The reason to use these technology and the sensor specification should probably be justified with qualitative and quantitative data and information to justify, how they satisfy our need in the authentication and how it will make sure that it has the most appropriate functioning that aligns with its needs other than any other alternatives along with the most concerning non- functional requirements [2]. E.g.: Cost efficiency. The reasons should be provided accurately with research articles related and other data analysis information collected by the researchers and has published already.
The most important fact to be clarified in this cause is that how effective and innovative the idea of implementing the entire system for the kindergarten education along with the initial neurology and brain development facts while completing the competencies level wise[5].
The above fact is same with the software framework and the image processing method that will be developed and the tools that are supposed to use should be transparent enough in proving their accuracy and suitability with the cause itself. This should be proved using the related literature survey and should be discussed point wise that how they are going to support or encourage each and every milestones of the project cause. There is some of the most important research findings clarified below being point wise with the evidences [10].

Kindergarten children represents the most initial age of a man’s entire mental and physical growth. In that point of view, a proper and well guided sensor management and good command in responding with the external environment should be optimized in this kindergarten phase[1][2]. The relativity of this fact strongly provides the evidence that virtual reality techniques can be applied in order to develop the sensorimotor training effectively. The provision of the real world inputs should be identified by the prospected system as much as possible with the technical background we provide. The accuracy of that technical background will ensure up to what percentage it will provide most accurate user inputs to the system internally,[3] depending on the fact that up to what extent it will be varied because of the external factors. Eg: temperature, relative humidity. Here in this sensorimotor training [1] fact, a set of competencies that are clarified in the kindergarten level should be identified before developing the software framework. The research work on the “Sensorimotor training in virtual reality” they clearly mention that neurons of the brain can best be trained using the fraction of the fingers mostly in the kindergarten phase.

The provision of the evidences and research facts proved in “Human Dexterity and cognition” [2] it is clearly mentioned in chapter 3.1 that evolution provides the great many evidences that everything happened in the process of human evolution is highlighted by the way how the thumb of the hand of a man grew in perpendicular direction in relation to the other four fingers. It clearly says that out of all the five fingers of a hand of the man, the thumb plays a major role in handling and sending and receiving commands after a complex and intricate process of millions and billions of neuron cells of a brain [7]. So it clearly mentions the point that in the kindergarten phase it is most important to train the thumb with cognition and friction phenomenon and should train the other fingers always followed with the thumb itself. This fact surely narrows the broad meaning of developing of the virtual reality functioning glove, for what fingers it should be provided with the prominence in fixing the sensors in the implementation prototype of the research cause and specifies transparently in what scientific basement it is decided the hardware design of the smart hand glove.

The research work of “E-Learning Application of Traiser with Virtual Reality using Android Platform (H.N Oroh, 2007 January)” provides the fact that why it is decided to develop a desktop application rather going for a mobile application which will be followed up some of the main e-learning facts. There are many mobile applications that follow up virtual reality applications but it is much less that it is provided the ability for the user to freely move their fingers on air in a guided platform and could perform a specific work provided by the system. This main purpose can be easily covered up by developing the entire system as a desktop oriented application and would follow up the initiatives of the raspberry pi technologies [13] easily in the process of evaluating and would easily emerge in a 3D platform. The other most related fact to be considered is that most of the android applications that emerge with the virtual reality functioning should follow up touch screen methods and techniques which are common in the user sense. So the proposed system will provide rather virtual reality experience in the sense of user experience with the free moving of the hand in the air without touching or maintaining any kind of a physical connection with another physical surface or material [11]. The connection is purely abstract between the user and the system. This is the most significant innovative point in the proposed system.

The fact to be further specified and narrowed why it is supposed to develop the entire system as an offline desktop application. It is not only developed as an mobile android application, but also as a web application using web 2.0 latest technology [4][5]. So in that point it is clearly reveals that there are virtual reality applications made as both online and offline platforms but with the typical virtual reality functioning glass wearing and typical touch screens will be featuring in each and every already developed systems. The fact that it makes the interested audience concern of is that whether it is online or offline, all the applications or the application frameworks that have been already developed and introduced, did not focus on the provision of kindergarten education on an interested and scientifically strong environment [10].

The fact that repeating again and again is that the significance and the innovation that lies with the proposed system is that it gives the prototype of technical implementation in a 3D environment along with the real world experience of as similar as writing or drawing an assigned work on the top of a guided background. This will precisely make it being happening according to the ancient ancestral beliefs of the mental training of the children to let them working out with the “Weli Pilla” or the “Gal Lella” as the initial step of starting the education [14].

The above fact about those Sri Lankan ancestral tools that they used to educate children with the education competencies or skills have not been researched globally but the historians and educationists that do researches locally on those cultures and their values and beliefs and what was the meaning behind them that they respected them as a part of their life. The samaneras, the ancient education experts and the institutions like “Guru Kula”, Temple followed up those Weli Pilla and gal Lella. These facts clearly mentioned in most of the write-ups of the findings from the history by Professor Senarath Paranawithana [16].

The most significant point to be clarified is that why it is supposed to use hall sensors in the mean of Hall Effect [7], other than the sensors that follow up different methods of working and sensing. The efficiency and accuracy of using the hall sensors in the sense of phenomenon of the “Hall Effect”[7] works out with the fraction. The applicability we have with this effect specification is that the proposed system is also aimed to be worked with the fraction made between the thumb and other two successor fingers providing the real world experience similar as you handle a pen, pencil or any other tool used to write or draw some work. The relativity of the field of magnet will be managed being centered on the thumb and the two sensors that sense the fraction on top of that magnetic field will be functioning being fixed on the two most successor fingers that come after the thumb. So in fact it will be much more clear that why we use hall sensors other than any other sensor categories that are effective in sensing the user commands. The variations that may have taken place in relation with the external factors are also measured qualitatively and they will be provided in the part of data analysis along with sensor data accuracy validation tests proposed by the experts in research work that have already done on hall sensors functioning. The related research work that is refereed in sense of the sensor specification also provide the major drawbacks to be practically faced along with the smart techniques to make those less in faults, especially to make the sensor readings more accurate. This fact is described in the section of sensor data accuracy analysis and accuracy test implementation part.

But the fact that these sensor suggestions keep away the very purpose in relation with the entire system by refraining to provide a method to let the mutual connection[16][17] to be happened among the fingers heading the thumb with their proper fraction proceeding in absorbing the user commands to the internal system.

The research status on the virtual reality application in real world causes holds low rating in relevance to the other technologies and most interested research areas. It is quantitatively and qualitatively proved with the analysis of data gathered after many of the researches done through the research articles and all the research publications that maintain their IEEE standards as proclaimed [18].

In the sense of developing the software framework, it is a must to look carefully on to the literatures research on what type of platforms, languages developing tools are used and what are the newly emerging technologies used to function a fully facilitated and compact software framework that would run offline. In general the software frameworks are developed using java language and spring frameworks are used to develop software frameworks in the java spring environment. It is provided with all the libraries you want to embed in your software or web framework. For online software frameworks like amazon, the most ideal example for the online framework that let the freelancer developers to carry on with advancements and developing of the applications and features as they wish in a controlled manner. The IntelliJ Idea [14] provides the main functions and facility for developing such a web framework. But in our problem it is needed to be concerned with the offline software framework concept and what are the most significant and widely assured tools used to develop them. In that case, java spring frameworks, the framework of frameworks plays a major role in the proposed project system development cause.

The image processing that will be done the evaluation part of the system will definitely follow up the MATLAB enterprise software other than the OpenCV [19][20]because of the shorter methods that the METLAB follows for the same digital image processing purpose while comparing to the OpenCV software. Lengthy and complex codes are comparably used in OpenCV, while the same purpose is achieved through a set of short and clear simple code lines in MATLAB. In the execution also, it needs only a initial standard set of resources that is provided by the MATLAB itself while OpenCV would follow up the all the operating system and compatible running requirements strictly to the point in the debugging of a kind of a program developed by a user at a time. MATLAB also does not have a lot of functionality and built in tools[20], so that makes it for the vast use of many industries worldwide. The raspberry pi technologies will contribute with the purpose of image processing itself.

The system will be multi user oriented program where it lets different users to maintain their user profiles separately while protecting the authentication and accessing the user history with their data [21]. For this purpose the system will definitely have to maintain a database that would communicate with the main system, software framework and the image processing or evaluation part. The spring framework techniques will go on with the SQL methodology [19]to achieve the target of developing such a complex database that satisfies all the system needs as prospected.

Reference

[1] Sensorimotor Training in Virtual Reality (Sergei V.Adamovich( PhD), February 2010)

[2] Human Dexterity and Cognition. Chapter 3.1 (Ritter H, 2014)

[3] E-Learning Application of Traiser with Virtual Reality using Android Platform (H.N Oroh, 2007 January)

[4] Investigation of Virtual Learning Environment in the Context of Web 2.0 (Mala Pusnik, 2010 March)

[5] The Research Status on Virtual Reality by using of bibliometric analysis (Tianye Zhang, 2010 June)

[6] A collaborative multi-view virtual environment for molecular visualization and modeling (J.W Chastine, 2005 July)

[7] An empirical study of virtual learning environment adoption using UTAUT  (Bostjan Sumak, 2010 March)

[8] Hall Effect- Hyper Physics

[9] Evolution of the human hand: The role of throwing and clubbing (WYoung, 2002 November 22)

[10] Brain Development in rodents and humans: Identifying benchmark of maturation and vulnerability to injury across species. (Bridgette D.Semple, 2013 April 11)

[11]Spring –The source for modern Java Frameworks
[12] Making switches smarter with true micro power “Hall Effect” sensors-Natural Language is the new user interface.

[13] Hall sensors tech goes modern for IOT and Automotive market

[14] Which is better for more efficient and quicker Image – Processing MATLAB, OpenCV or Octave?


A.N.A. Perera
ICT/2014/2015/030

Tuesday, May 1, 2018

Introduction to the our project.

Problem

Many systems have been implemented applying virtual reality concepts on advanced perceptions on e-learning. However, none of these focus on the early stage of development in children. Moreover, it is widely accepted that the emerging technology trends retard the motor skills and fundamental brain development, prospected at the initial growing stages of children.  
Therefore, it is necessary to design a system that utilizes the virtual reality implementations for enhancing the initial development and growth of children countering the bad impacts of technology on them. 

1.Introduction

Virtual reality technologies have great potential and novel strategies, which are known as “Sensorimotor training in neuron-rehabilitation” [1], [2] can be used to enhance the brain development of the kindergarten children, who are above the age limit between two and four years. Hand and its gestures have a direct connectivity with the brain development [8], [9], [10], which is considered to be the important scaling factor to measure its timely accurate development expected at the prospected age limit.  
The brain development is fore mostly measured by the controlling and handling of the commands interpreted by the brain through the real time responding of hands (with their motions done by fingers). 
Even though there had been many researches on virtual reality concepts and related brain development, most of them focus E-Learning [1], [2], [3] rather than on the brain development with motor skills of hand (gestures done by fingers) focusing on kindergarten age, which is considered by the specialists as the most important and foremost stage that decides entire growth of life time of a man.  
The mechanism that we are going to develop would also counter the idea that the technology hiders the brain development related activities that are considered to be mandatory by the specialists of the relevant area. 
The proposed system would execute both virtual reality concepts and brain development strategies of a child at its initial state. This system can be later developed to be a fully functioned E-Learning implementation with all prospected possibilities. 

1.1. Why a platform? 


The main reason to develop a platform [11] would definitely rely on very purpose of the applicability and the modifications that can be used with the new findings, developments and researched facts to lead the framework for greater advancements in the future. 

A software framework is an abstraction in which providing generic functionality can be selectively changed by additional user code. It provides a standard way to build and deploy applications. A software framework is universal and gives a software environment that provides the functionality as part of a larger software platform to facilitate development of software applications, products and solutions. 

A software framework may include support programs, compilers, code libraries, tool sets and application programming interfaces (APIs) that bring together all the different components to enable the development of a project or system. We suppose to use a java framework where object oriented programming concepts are applied with and such a framework would contain with, 

a. Ready made architecture 
b. Set of classes and interfaces 

1.2. Main interfaces (Functions) within the platform 


For the implementation purpose 

  1. Authentication and establishing the connection of the smart kid hand glove to the framework via Bluetooth.
  2. Navigation to the preferences of activities provided with the framework. 
  3. Providing the activity interfaces with the preferred selections on a guided background (Basic shapes, lines, curves). 
  4. Compatibility calculation (between real image and the drawn sketch by child) and submission of the evaluation on the child’s performance level.             
For the future developments and modification (Essentials of a framework) 
  1. Collection    : The root of the collection hierarchy
  2. List               : Extends the collection interface to maintain a sequence     of elements that need to be unique. 
  3. Queue          : Collection used to hold multiple elements
  4. De-queue: Collection used to hold multiple elements prior to processing and provides additional insertion, extraction and inspection operations. 
  5. Set          : Extends the collection interface and contains a set of unique elements. 
  6. Sorted set: Extends the set interface to provide the required functionality for maintaining a set in which the elements are stored in some sorted order. 
  7. Map             : An object that maps keys to values 
  8. Sorted Map: Extends the map interface for maps that maintaining their mapping sorted in key order. m. Iterator Interface : Used to iterate elements of a collection 



Reference: http://javaultimate.com/java/collection_introduction.htm 

1.3. The reason for developing a smart glove  


The main deploying and controlling hands lie with the virtual user inputs to the framework .In order to generate that virtual user inputs and make it inserted to the framework is totally done with the operation of the smart glove that we suppose to develop with  IOT technologies [12], [13] and virtual reality concepts. 

1.4. The development of the activity evaluation method  


An evaluation method is supposed to develop with the framework would follow up the image processing techniques for providing more accurate and correct feedback [14] to the users themselves as a percentage of the compatibility based rating tool. 

2. Background and Motivation 

Even though there are many aspects and findings of the E-Learning applications with the virtual reality platform [3], there are problem with the prospected consumers and user base, and with the high-end technology used, which leads to a very high market price. 
Most of the today’s researched and validated findings are related to usage of virtual reality platform for an effective education [3] and development of effective education platform via the development of brain and neurological senses transmission and conduction [1],[2], yet none of any implementation has been made combining both facts into one implementation.  

Some of the important and relative research work done within recent past is as follows. 
  • Investigation of virtual learning environment in the context of web 2.0-IEEE Conference Publication.[3] 
  • The research status on virtual reality by using bibliometric analysis-IEEE Conference Publication.[4] 
  • The Research Status on Virtual Reality by using of bibliometric analysis-IEEE Conference Publication[5] 
  • A collaborative multi-view virtual environment for molecular visualization and modeling-IEEE Conference Publication.[6] 
  • An empirical study of virtual learning environment adoption using UTAUT -IEEE Conference Publication.[7]

3. Aims and Objectives 

3.1. Project Aim: 

      The prime aim of this project is to develop a software framework [11] that is controlled by a smart hand glove which interprets hand gestures (fingers) in a virtual reality platform[12], [13], specially focusing on monitoring and developing the prevailing state at the time of consideration of a child. The proposed system activities that would base within the framework are predefined with the expert knowledge gathered through a survey done in the relevant field. 

3.2. Project Objectives 


  •    To conduct a survey with to gather accurate information on the activities specified with the learning outcomes and objectives of prospected at kindergarten level. 
  •     To conduct a survey on the software framework developing technologies and languages. 
  •     Finalizing with the activities that are best to be included with the framework. 
  •     Developing the framework.[11] 
  •     Developing an evaluation method with the image processing techniques.[14] 
  •     Developing the smart hand glove.[13] 
  •    Connection configuration of the hand glove with the software framework developed along with the evaluation method. 
  •     Emerging the system in a 3D-Platform. 
  •   Conducting a quality assurance survey with the help of a defined number of children, deploying them in the entire system (framework + Hand Glove) and getting their and their parents feedbacks on the project. .  

4. Methodology 

     The system is going to take the inputs from the user through the hand glove with the functioning of the “Hall Effect” which is generated with the hall sensors and the magnet. This would completely be transmitted via Bluetooth connection that is configured in between the web cam fixed laptop with Bluetooth facility and the Bluetooth module fixed with the hand glove. While this processing happens, the Arduino Uno circuit (IOT Technologies) of the glove would process with the conversion of the analog signal into digital form before sending them into the software framework.  
    The Insulation of the processed input to the system would then continue with the compatibility checking of the provided activity and the performed activity of the user. In order to do this, the relevant components will be exported to the image processing software/technique, via a special method called by the software itself (defined by the programmer). 
     According to the manipulated data, the provision of the user with a proper, accurate, analytical and mathematical feedback, embedded with all possible GUI techniques would be returned to the user. The way how it does the feedback displaying would follow up self-addictive strategies based on the surveyed details gathered on the typical child’s mindset and their interests. 
   The whole system would follow up a virtual, 3D platform/environment in the emerging and functioning. 

Hall Effect [8] 

    If an electric current flows through a conductor in a magnetic field, the magnetic field exerts a transverse force on the moving charge carriers which tends to push them to one side of the conductor. A buildup of charge at the sides of the conductor will balance this magnetic influence, producing a measurable voltage between the two sides of the conductor. The presence of this measurable traverse voltage is called Hall Effect. 

Motivational Factors  

  1.        Deploying a defined number of users (kids) with the effective involvement of their parents, to get a proper and balanced feedback to check whether the whole system developed supports the project objectives itself. 
  2.      Process with the comments of the deployed users and their parents and look into the possible advancements and changes that can be further done with the framework and whole system. 
  3.      Conclusion of the project implementation, providing the opportunities for further research work in future on the whole system. 


References

[1] Sensorimotor Training in Virtual Reality (Sergei V.Adamovich( PhD), February 2010)

[2] Human Dexterity and Cognition. Chapter 3.1 (Ritter H, 2014)

[3] E-Learning Application of Traiser with Virtual Reality using Android Platform (H.N Oroh, 2007 January)

[4] Investigation of Virtual Learning Environment in the Context of Web 2.0 (Mala Pusnik, 2010 March)

[5] The Research Status on Virtual Reality by using of bibliometric analysis (Tianye Zhang, 2010 June)

[6] A collaborative multi-view virtual environment for molecular visualization and modeling (J.W Chastine, 2005 July)

[7] An empirical study of virtual learning environment adoption using UTAUT  (Bostjan Sumak, 2010 March)

[8] Hall Effect- Hyper Physics

[9] Evolution of the human hand: The role of throwing and clubbing (WYoung, 2002 November 22)

[10] Brain Development in rodents and humans: Identifying benchmark of maturation and vulnerability to injury across species. (Bridgette D.Semple, 2013 April 11)

[11]Spring –The source for modern Java Frameworks
[12] Making switches smarter with true micro power “Hall Effect” sensors-Natural Language is the new user interface.

[13] Hall sensors tech goes modern for IOT and Automotive market

[14] Which is better for more efficient and quicker Image – Processing MATLAB, OpenCV or Octave?

M.T.V.V. Perera
ICT/2014/2015/029

How our entire system works