30 July 2018

Artificial Intelligence and AI Software Testing Tools

 
end to end testing automation



Technology is not value neutral, and technologists must take responsibility for the ethical and social impact of their work. As history attests, technological innovation in itself is no guarantee of broader social progress.
DeepMind

Part I

 

One term, multiple meanings

An American psychologist, Howard Gardner, Professor at the Harvard University, developed the theory of multiple intelligence. Our intelligence was divided into eight blocks, namely: logical and mathematical intelligence as well as linguistic, natural, musical, spatial, motion, interpersonal and intrapersonal intelligence.

Another psychologist, Daniel Goleman, included two of the above intelligence types (inter and intra-intelligence) in a broader category called emotional intelligence. Goleman proved that its possession or development is important from the point of view of life success, both with regard to personal and professional life.

It turns out that full understanding of the human intelligence requires use of more precise tests rather than a standard IQ measurement.

Intelligence of machines

When referring to those divisions, one should ask what we have in mind when talking about artificial intelligence. How does this solution refer to various aspects of human intelligence? 

In today’s discourses, this term combines such phrases as machine learning, deep learning or neural networks. What does this actually mean?

One may have the impression that artificial intelligence in everyday use is a word for anything defining various computer techniques that may not be written by means of a simple algorithm. On the other hand, I have come across statements that artificial intelligence covers algorithms and solutions reminding one of intelligent behaviours only in a limited environment.

Society receives artificial intelligence as something more than just a machine that is able to talk to you based on effective imitation. AI is not divided into several types by the society. There is only one type. The intelligence is based on self awareness. 

A proposal of Paul Levinson seems to be fascinating. He stated that intelligence consisted of acting in one’s own interest and this is how it should be described with regard to broadly-defined machines.

Dark times or Judgement Day

The “acting in one’s own interest” criterion applicable to machines, leads us to pop-cultural visions, the Judgement Day. The most popular films regarding this subject, present a world where co-existence of people and artificial intelligence is impossible, as it leads to a conflict. This was the case with the military programme “Skynet” in Terminator. 

I think that the social imagination is based on such an approach to this technology. This is not a completely naive approach, taking into account that intelligent autonomous military weapons were strongly criticised by such personalities as Elon Musk, Stephen Hawking or the author of a classic handbook entitled “Artificial Intelligence: A modern approach”, Stuart Russell.

We are far from the edge of truth

People interested in artificial intelligence certainly noted events relating to DeepMind. Newspapers wrote about this company in 2014, when Google acquired it for USD 500 million.

In general, the company attempts to transform human intelligence into an algorithmic construct. They try to formalise intelligence. The company has created a neural network able to play games in the same way people do it.

 
AlphaGo

A wave of emotions was generated by an announcement in 2015 and 2016 when their AlphaGo programme beat the most talented gamers of GO, e.g. Lee Sedol. At that time, the second biggest number of won Go championships in the world. 

Kei Jie is also considered as one of the best and he stated that the technique of playing Go developed by people for thousands of years seems to be far from truth of Go, which AlphaGo proved. He also added, that “Last year, (AlphaGo) was still quite humanlike when it played, but this year, it became like a god of Go”.

AlphaGo is based on techniques of neural networks, machine learning and Monte Carlo method of searching.

In the context of what the newspapers wrote in 1996, this really is a breakthrough. At that time, Deep Blue won a game of chess with Garry Kasparov, a world champion then. After the above happened, it was claimed that a chess game is not a real test for intelligence, but the oldest board game of Go. 

In 1996, the New York Times quoted a statement made by Dr Piet Hund who stated that computers will need even a thousand years before they start beating people in Go. 

Technology has surprised Go gamers as well as our assumptions regarding the dynamics of technological progress. 

AI apphawks

 

Deep learning

The breakthrough is primarily associated with technology called ‘deep learning’.

Deep learning is a type of machine learning based on a multi-layer model. This means that this multi-layered aspect causes each layer of the algorithm to use the previous one as the parameters. As a result, learning the system consists of updating connections after each new stimulus. This solution is created by IT systems called a neural network. Their design and functioning is similar to the work of a human brain. In other words, computer models learn when analysing input and output data.

Deep learning is different from machine learning, as neural networks are able to learn without direct contribution of a human. They go beyond linear logic. This technology results in the possibility of recognising objects and speech, for instance in self-driving cars. 

Deep learning also provides the possibility of analysing huge data sets by adopting computer systems.

Strong AI, Full AI or Artificial General Intelligence

Deep learning is a new approach to automated learning but it features some limitations. Artificial intelligence systems are highly specialised. They are able to handle a narrow goal instead of all types of problems. In certain areas, machines have already achieved a level that is not possible to be achieved by a man. When artificial intelligence is portrayed as “strong”, “full” or “general” (AGI), the current solutions are only a small part of a bigger picture.

Driving force of the history

Richard Barbrook has observed that the vision of the future of the 21st century is the same as in the second half of the 20th century. In his opinion, we are still living outside of the present because we have been tempted by digital liberation for years. The vision of computerised future has become our driving force, the drive of history. 

As much as we don’t have to agree with the thesis and narration of Barbrook that we are living in the state of permanent sense of technological deficit, one may have the impression that AI technology comes with many uncertainties. Announcements regarding autonomous weapons are concerning.

Using narrow AI in business and education for limited goals is something different from general AI. Today, it is hard not to be a fascinated sceptic. 

 

Part II

 

AI Software Testing Tools

In the area in which Apphawks operates, namely in software testing, there may also be some important changes in the future. The term Artificial Intelligence for Software Testing (AIST) exists already today, which means:

Emerging field aimed at the development of AI systems to test software, methods to test AI systems, and ultimately designing software that is capable of self-testing and self-healing.

 — AISTA 

Combining solutions regarding AI and software testing has become a fact. Market analysis has indicated that testers can benefit from several very useful tools or platforms which simplify and shorten their work already today. 

In order to depart from the introductory character of AI-focused narration, I have prepared a practical list of several start-ups, whose solutions base on AI technology in its narrow understanding.

Test.ai

testai

AI-powered test automation solution. Test.ai provides automated test coverage and eliminates the mundane aspects of testing so testers can apply their skills to creative problem solving, and provide greater value to their organizations.

Applitools

 
applitools

Visual AI-based cloud engine that validates all the visual aspects of any Web, Mobile and Native app in a fully automated way. AI-powered computer-vision algorithms instantly detect and report any difference found between screenshots and baselines.

Testim

testim

Testim.io leverages machine learning for the authoring, execution and maintenance of automated test cases. Testim use dynamic locators and learn with every execution. 

Functionize

functionize

Functionize’s autonomous testing platform equips teams to create, execute, and maintain tests. Functionize is adaptive cloud-based testing that leverages machine learning and AI to accelerate development and improve software quality.

Advantages of AI in software testing

The tools listed above will not replace a tester but they may help them. Visual testing, faster bug finding, deciding what should be tested and where to look for errors are only some of the advantages. 

Faster process of improving software quality may mean for the tester that they will have more time for product analysis from the point of view of use and business. After all, the value of the tester also consists of analysis of safety, performance or documentation of software. 

The broad scope of this role is hard to be brought down to the role of automated functions today.

What are your thoughts on artificial intelligence and its impact on creating and testing software?

 

Artificial Intelligence
Software testing tools

See other articles


How To Test Search Forms: Blueprint


25 Tips to have a Successful QA Outsourcing


Getting started with BDD Frameworks