License : AGPL v3
Build Status
Contributing welcome
Code of Conduct


Asqatasun Logo

Asqatasun is an opensource web site analyzer, used for web accessibility (a11y) and Search Engine Optimization (SEO).


  • SEO measurement
    • run fully automated tests to track SEO issues
    • scan zillions of pages
    • create your own tests
  • web accessibility assessment #a11y (RGAA 3, AccessiWeb, WCAG)
    • scan a whole site for a11y issues (crawler included)
    • scan a given page, and manually fulfill the audit to produce report
    • scan offline file (e.g. template being created but not online yet)
    • scan a user-workflow like site registration, form completion or e-commerce checkout with Asqatasun scenarios.



  1. Automate as much as we can and even more :)
  2. Be 200% reliable (don't give erroneous result)
  3. have technological fun

Installation and documentation

Four ways to read the doc:

  • Online:
  • In the documentation/ directory if you cloned the repos or downloaded the .tar.gz


And also:

Universe: accessibility "a11y"

What tests are covered:

  • all the "tag and attributes tests" like missing alt, table headers check, frame title...
  • color contrast
  • language specification
  • downloadable files / office files (spreadsheet, word-processor...)
  • switch of context
  • ...

This represents 173 accessibility tests.

Universe: Search Engine Optimisation "SEO"

What tests are covered:

  • at the scope of the entire site (i.e. site-wide):
    • non-uniqueness (duplicate) of <h1>
    • non-uniqueness (duplicate) of <title>
    • non-uniqueness (duplicate) of <meta description>
    • duplicate pages
    • presence of robots.txt / sitemap.xml
  • at the scope of the page:
    • non-relevancy of content of <h1>
    • non-relevancy of content of <title>
    • non-relevancy of content of <meta description>
    • non-relevancy of content of link-text <a href="">...</a>
    • non-relevancy of <h1>...<h6> structure
    • rewrite-rule presence
    • ...

Contact and discussions


We would be glad to have you on board! You can help in many ways:

  1. Use Asqatasun on your sites !
  2. Give us feedback on the forum
  3. Fill in bug report
  4. Contribute code



Major changes of this last version (Asqatasun 4.1.0, 2020-04-03)



For users:

  • New grade (Asqatasun meter) made of A, B, C, D, E, F instead of 0-100% #252, #248
  • I18N: Add german translation #172

For developers and ops:

  • Add Vagrant installation
  • Support for Ubuntu 18.04 #269, #281
  • SQL procedure: Add option to choose the contract duration #213
  • Enhanced pre-requisites to allow database name containing hyphen "-"
  • SQL procedure / CONTRACT_create: increase the default contract duration (3 years instead of 1 years) #215
  • SQL procedure / CONTRACT_create: add option to choose the contract duration in year, month or day #213
  • - Added new SQL procedures: list_running_acts + Last_audits #139
  • added code quality tools
    • Unit tests coverage report (Jacocoo) #185
    • OWASP Dependency-Check #155
    • Checkstyle #198
    • Javadoc #156
  • script:
    • Added --krash-test option #182
    • Added --log-build option #169
    • Added --build-only-* options #145
    • Added option to skip unit tests #144
  • Documentation :
    • Have more friendly and explicit for beginners #222
    • Added documentation on how to run a krashtest campaign #147
    • Added "howto configuring Apache frontend with AJP connector and HTTPS Let's Encrypt"
    • Added "Crawler management" with howto increase maxDocuments in site-audit

Breaking changes

For developers and ops:

  • JDK upgraded from Java7 to Java8 #253
  • DB character encoding is now utf8mb4 #255
  • Build - Maven 3.1 is required (needed for org.owasp:dependency-check-maven) #154


For users:

  • Changed the default to only show "failed" and "pre-qualified" results) #202
  • Default email for login is now #267
  • Improved krash emails ergonomy #276

For developers and ops:

  • Update version of dependency (DynamicJasper)
  • Adjust release script to manage release branch #315
  • Configure Travis deployment only on tags #317


For users:

  • Incorrect string value: '\xF0\x9F\x99\x82" ...' for column 'Source', aka utf8mb4 should default encoding to be able
    to deal with smileys #123
  • Fixed Rgaa 3.2016, 8.9.1: unit tests fail #137
  • Create a contract pointing to an internal URL, even if the domain does not end with a valid gTLD #126
  • Contrast ratio link: fixed ratio parameter #119
  • Site-audit in error: added "check for redirection" as possible explanation #146
  • Site-audit in error: fixed the robots.txt URL in error message #179
  • Don't allow starting an audit if no referential is activated for the current project #203
  • Don't allow starting website audit if URL is not defined for the current project #204
  • I18N: standardize "project" and "contract" naming (en/fr/es) #216
  • Webapp UX - Admin user can quickly add a new project to his account #208
  • Webapp UX - Admin user can quickly update his expired contract #211
  • Contract creation: verify at least one referential is selected #27
  • Contract creation: forbid contract without URL and with website audit enabled #28

For developers and ops:

  • Ubuntu 18.04 ensure MariaDB/Mysql configuration file is included #311
  • Make release script more reliable #286
  • <form:errors path="scenarioFile">, allowed <abbr> in error message #138
  • Prerequisites: libspring-instrument-java is no more needed #200
  • Unit tests: replaced domain name by #127
  • I18N:
    • webapp + rules: converted i18n files in UTF8 character encoding #170
    • webapp / i18n files: converted all HTML entities to their applicable UTF-8 characters #173
    • webapp / i18n files: removing unnecessary escaped characters #174

See full Changelog for details.


  • Please see Documentation > Administrator_doc > Upgrading

Have Fun

Happy testing !

Asqatasun Team