-
Notifications
You must be signed in to change notification settings - Fork 49
FAQ
This section contains answers to frequently asked questions. If you can't find an answer to your question here please use the Issues Tool to raise it.
-
1. Setup and first steps
- 1.1. What do I need to start using AET?
- 1.2. I have an AET environment, how can I run tests?
- 1.3. How can I integrate AET with continuous integration tools?
- 1.4. I'm running AET for the first time. How will the tool know the patterns?
- 1.5. I would like to run my suite from my Windows machine and use some endpoint that is not my localhost. I get the unsuccessful status request with the code: 401. What should I do?
- 2. Environment and software
-
3. User interface and reports
- 3.1 What browser should I use to browse AET reports?
- 3.2 I would like to compare pages between two environments/domains. How can I do that with the AET Tool?
- 3.3 How can I access pages that require authentication to enter?
- 3.4 How can I simulate another user agent?
- 3.5 What can I do with elements that render differently each time a page is opened and it occurs in changes detected each time?
- 3.6 I want to check how my page behaves on mobile devices, how can I do that?
- 3.7 How to get the latest report for the AET test suite?
- 4. Best practices
- 5. Technology
You need Maven and Java installed to run AET and Chrome browser to see reports if you have AET environment already set up. See more information in Running Suite section. To setup AET you need VirtualBox 5.2.18 to run AET VM. See more details in Basic Setup section.
You need the AET shell script to run AET and the Google Chrome browser to see reports. See more information in Running Suite section. To start AET suite you need 2 files:
- aet.sh that defines how to run AET Client Scripts,
- suite.xml that defines AET suite.
To run the suite simply execute this command:
./aet.sh <endpoint> [<suite_file_name>]
from the directory where you have the two files mentioned above.
Next, you will see processing progress. After a
SUCCESSFUL BUILD
open redirect.html
in the Google Chrome browser file to see the report.
AET tests are triggered by the AET shell script. Thanks to this you may simply
run ./aet.sh <endpoint> [<suite_file_name>]
from your favourite CI tool (e.g. Jenkins or
Bamboo).
When running AET for the first time AET has no patterns. The first collected screenshots will be treated as patterns, so the first run will detect no changes. The same is true when a new test or url is added to already existing suite - new records will have patterns collected during the first suite run.
1.5. I would like to run my suite from my Windows machine and use some endpoint that is not my localhost. I get the unsuccessful status request with the code: 401. What should I do?
When running tests from Windows there can be a problem with jq. The solution can be to run the same test from WSL (Windows Subsystem for Linux, e.g. Ubuntu).
AET currently makes use of Google Chrome. Information about current versions of components used by AET can be found in Third-party software used by system section.
Yes, AET uses MongoDB where all data collected during AET suite processing is stored.
You can add custom fonts to AET virtual machine. To do so, place desired fonts inside
usr/share/fonts
or /usr/share/fonts/truetype
directories, AET's FireFox should use them.
Other idea is to install fonts with e.g.:
yum groupinstall chinese-support
yum groupinstall arabic-support
See more details in answers for this AET question.
The REST proxy is required if you want to:
- test [Status codes|StatusCodesCollector],
- modify headers with the [Header modifier|HeaderModifier].
AET reports are dedicated and tested with Google Chrome browser, however they should also work fine with other modern browsers like Mozilla FireFox or Microsoft Edge.
3.2 I would like to compare pages between two environments/domains. How can I do that with the AET Tool?
The AET System enables comparison of the same page (set of pages) between different environments (domains). To do so, simply change domain parameter (either by change in suite definition or using aet run command) when running following tests. All data collected during those suite runs will be compared with the same patterns (which are independent of domain attribute).
There are two possible solutions. For the Basic Authentication you may use Header Modifier
with Authorization
key set:
<header key="Authorization" value="Basic emVuT2FyZXVuOnozbkdAckQZbiE=" />
The string in value
is base64 encoded
username:password
string.
The other way is to use Login Modifier that can pass simple login form.
Use Header Modifier to achieve that. Just add header modifier with key 'User-Agent'
and requested value.
3.5 What can I do with elements that render differently each time a page is opened and it occurs in changes detected each time?
Use Hide Modifier to hide those elements with css
or xpath
selectors.
AET is not integrated with mobile devices. However, you may simulate mobile resolution and check if your page changes its rendering breakpoints for different resolutions. Use Resolution Modifier to simulate different resolutions.
AET report are accessible by an URL with suite execution identifier passed in query string, i.e.:
http://localhost:8181/report/report.html?company=aet&project=aet&correlationId=aet-main-1234567890
In the example above the latest version of suite with correlation ID of aet-main-1234567890
.
To see tha last version of suite without knowing correlationId
use the URL of following form:
http://localhost:8181/report/report.html?company=<company>&project=<project>&suite=<suite>
i.e.:
http://localhost:8181/report/report.html?company=aet&project=aet&suite=main
4.1 I want to check how my page looks on several devices - what is the best way do configure a suite?
You may configure several Resolution Modifiers and Screen Collectors
within single <collect>
phase. Please remember that it is a good practice to give tested page
the time to adjust after changing the resolution and before collecting a screenshot.
Example test configuration may look like this:
<collect>
<open/>
<wait-for-page-loaded />
<resolution width="1280" height="1024"/>
<sleep duration="1000"/>
<screen name="desktop"/>
<resolution width="320" height="480"/>
<sleep duration="1000"/>
<screen name="mobile"/>
</collect>
The technology that AET makes use of comprises:
- Java 8 (with Apache Camel, jUnit 4, Mockito)
- Apache Karaf (OSGi)
- Apache ActiveMQ (JMS)
- MongoDB (NoSQL DB)
- Browsermob (HTTP Proxy)
- Selenium (Grid with Hub and Chrome nodes)
- Chef (cookbooks + Vagrant local instance on Oracle VirtualBox - see AET Cookbook
- Docker (with example Docker Swarm cluster config) - see AET Docker
- AngularJS (Report app)
-
How To Use
-
Releases