?
Solved

Acceptance Testing Frameworks

Posted on 2011-03-16
7
Medium Priority
?
300 Views
Last Modified: 2013-12-13
I need clarification on how an Acceptance Test (AT) may  be automated.


I use Unit Tests extensively already but I am a little confused on how may  an acceptance may
fits into the picture.

I do know that the AT must be given a high-level description, but how does this map to code?
0
Comment
Question by:geldfeld
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
7 Comments
 
LVL 29

Expert Comment

by:pepr
ID: 35152068
I am not 100 % sure, but I think that you should search for "mockup" testing. Basically, you need to build a kind of faked environment that simulates the chosen subset of real situations. The tested part of the system is joined to the mockup objects and have to respond (as a black-box) correctly.

If unit testing is focused on testing the tiny, essential bits of the functionality (isolated), the acceptance test do test the units in cooperation, as if it was real run of the system.
0
 

Author Comment

by:geldfeld
ID: 35157360
@pepr  - I have read the Acceptances Tests can be automated, yet they are defined in high level langague by the business users.  What are the steps in between, mapping the high-level description to the test scenario.

This is not what I am clear about.
0
 
LVL 29

Accepted Solution

by:
pepr earned 2000 total points
ID: 35158147
I personally did not implement it, so take my words from that position. I have touched the problem when learning principles of Agile software development (http://en.wikipedia.org/wiki/Agile_Software_Development), namely the Extreme Programming (http://en.wikipedia.org/wiki/Extreme_Programming). However, there are other approaches to Agile development (see the earlier page).

Probably all of the methodologies rely on heavy testing. The problem is that some methodologies name the same thing using different terms. This is possibly also because of the fact that they recognize and support different levels of testing (more or less fine grained levels).  As far as I know all of them quite agree with Unit testing (i.e. the lowest tests).  However, Extreme Programming adds only Acceptance testing.  Some other methodologies talk about integration testing, GUI automated testing, etc.

Another problem is that it is easy to talk about something, but it is difficult to implement it.  Many probably agree with User stories (http://en.wikipedia.org/wiki/User_story) that are usually written on paper cards using some simple sentences. They are something like "human-oriented expectation unit-tests". Then the question is who is the user. Is it the one that clicks the button on the screen or the one that had a vision how their system should look like inside...

It is also difficult to say what does it mean the "domain specific language" that should help to formalize the descriptions form User stories. Try to search for articles by Martin Fowler (http://www.martinfowler.com/). Read the sample chapter related to the domain specific languages (http://www.informit.com/articles/article.aspx?p=1592379).

Google for http://www.google.cz/search?q=Martin+Fowler+DSL

Try also http://www.google.cz/search?q=Martin+Fowler+mock and read the article "Mocks Aren't Stubs" (http://martinfowler.com/articles/mocksArentStubs.html). This is not the direct answer but you may find some things there that you look for.

Search also for Robert C. Martin  (try  http://www.google.cz/search?q="Robert+C.+Martin"+acceptance+test)
Read his "The Test Bus Imperative: Architectures That Support Automated Acceptance Testing" (http://martinfowler.com/ieeeSoftware/testBus.pdf)
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 

Author Comment

by:geldfeld
ID: 35163954
@pepr  - this has covered the issues that I needed resolved regarding Acceptance Testing.

The article from Martin Fowler were especially helpful

0
 
LVL 4

Expert Comment

by:jpg526
ID: 35338815
To make it simple, unit test is done by developer to ensure the functional point works.
To do a Acceptance test, you need to study the software requirement, think about what actual that user expectation.

You should not try to "map" it code (and.....actually you don't need to)

for example, let's say you are developing a image editing software, and you have developed lots of complicated image editing functions (and you did extensive unit test on it). The acceptance test may be just simple as:
Test Case 1: Open and close application
Test Case 2: Open a JPG image
Test Case 3: Open a BMP image
Test Case 4: Apply blur filter to opened image.

that's it.


0
 
LVL 31

Expert Comment

by:James Murrell
ID: 36515797
This question has been classified as abandoned and is closed as part of the Cleanup Program. See the recommendation for more details.
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This guide will walk you through the essential considerations and tech stack for building scalable websites. Know how to grow your business the smart way!
Ever wonder what it's like to get hit by ransomware? "Tom" gives you all the dirty details first-hand – and conveys the hard lessons his company learned in the aftermath.
The viewer will learn how to successfully create a multiboot device using the SARDU utility on Windows 7. Start the SARDU utility: Change the image directory to wherever you store your ISOs, this will prevent you from having 2 copies of an ISO wit…
The viewer will learn how to successfully download and install the SARDU utility on Windows 7, without downloading adware.

765 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question