Crawljax core

Crawling Ajax applications through dynamic analysis and reconstruction of the UI state changes. Crawljax is based on a method which dynamically builds a `state-flow graph' modeling the various navigation paths and states within an Ajax application.

License

License

GroupId

GroupId

com.crawljax
ArtifactId

ArtifactId

crawljax-core
Last Version

Last Version

4.1
Release Date

Release Date

Type

Type

jar
Description

Description

Crawljax core
Crawling Ajax applications through dynamic analysis and reconstruction of the UI state changes. Crawljax is based on a method which dynamically builds a `state-flow graph' modeling the various navigation paths and states within an Ajax application.
Project URL

Project URL

http://crawljax.com/crawljax-core

Download crawljax-core

How to add to project

<!-- https://jarcasting.com/artifacts/com.crawljax/crawljax-core/ -->
<dependency>
    <groupId>com.crawljax</groupId>
    <artifactId>crawljax-core</artifactId>
    <version>4.1</version>
</dependency>
// https://jarcasting.com/artifacts/com.crawljax/crawljax-core/
implementation 'com.crawljax:crawljax-core:4.1'
// https://jarcasting.com/artifacts/com.crawljax/crawljax-core/
implementation ("com.crawljax:crawljax-core:4.1")
'com.crawljax:crawljax-core:jar:4.1'
<dependency org="com.crawljax" name="crawljax-core" rev="4.1">
  <artifact name="crawljax-core" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.crawljax', module='crawljax-core', version='4.1')
)
libraryDependencies += "com.crawljax" % "crawljax-core" % "4.1"
[com.crawljax/crawljax-core "4.1"]

Dependencies

compile (24)

Group / Artifact Type Version
org.apache.commons : commons-math3 jar 3.6.1
org.apache.commons : commons-text jar 1.6
ru.yandex.qatools.ashot : ashot jar 1.5.4
org.jgrapht : jgrapht-core jar 1.3.0
xmlunit : xmlunit jar 1.6
net.sourceforge.nekohtml : nekohtml jar 1.9.22
net.jcip : jcip-annotations jar 1.0
org.seleniumhq.selenium : selenium-firefox-driver jar 3.141.5
org.seleniumhq.selenium : selenium-chrome-driver jar 3.141.5
org.seleniumhq.selenium : selenium-support jar 3.141.5
org.seleniumhq.selenium : selenium-remote-driver jar 3.141.5
com.google.inject : guice jar 4.2.2
com.google.inject.extensions : guice-assistedinject jar 4.2.2
io.dropwizard.metrics : metrics-core jar 4.1.0-rc2
com.assertthat : selenium-shutterbug jar 0.9
com.codeborne : phantomjsdriver jar 1.4.4
org.bytedeco.javacpp-presets : opencv-platform jar 3.4.3-1.4.3
io.github.bonigarcia : webdrivermanager jar 3.1.1
com.google.guava : guava jar 27.0.1-jre
org.slf4j : jcl-over-slf4j jar 1.8.0-beta2
org.slf4j : jul-to-slf4j jar 1.8.0-beta2
org.slf4j : slf4j-api jar 1.8.0-beta2
ch.qos.logback : logback-classic jar 1.3.0-alpha4
com.google.code.findbugs : jsr305 jar 3.0.2

test (7)

Group / Artifact Type Version
org.eclipse.jetty : jetty-server jar 9.4.14.v20181114
org.eclipse.jetty : jetty-security jar 9.4.14.v20181114
org.powermock : powermock-module-junit4 jar 2.0.0-RC.4
org.powermock : powermock-api-mockito2 jar 2.0.0-RC.4
junit : junit jar 4.13-beta-1
org.hamcrest : hamcrest-library jar 1.3
org.mockito : mockito-core jar 2.23.4

Project Modules

There are no modules declared in this project.

Crawljax

Crawljax is a tool for automatically crawling and testing modern web applications. Crawljax can explore any JavaScript-based Ajax web application through an event-driven dynamic crawling engine. It produces as output a state-flow graph of the dynamic DOM states and the event-based transitions between them. Crawljax can easily be extended through its easy-to-use plugin architecture.

Maven

<dependency>
    <groupId>com.crawljax</groupId>
    <artifactId>crawljax-core</artifactId>
    <version>4.1</version>
</dependency>

Documentation

You can find more technical documentation in our project wiki.

Community

Keep track of development and community news.

Changelog

Detailed change history is avaialbe in our changelog.

Testing inside a Docker container

Install Docker and run the "run-tests-in-docker.sh" script. It's recommended to increse your Docker memory to at least 4.0 GiB to avoid OOMs during testing.

Testing on your machine

You can run the tests using maven with the command

mvn clean package

If you want to run all the test, including browser tests, run

mvn clean test -P integrationtests

The default driver used for testing uses Chrome so make sure you have Chrome installed on your machine. You can also specify which browser you'd like to use with the test.browser variable. For example, if you want to test with Firefox, use:

mvn clean test -P integrationtests -Dtest.browser=FIREFOX

Again, make sure a recent version of Firefox is installed on your machine before running the tests.

com.crawljax

Crawljax: Crawling Ajax-based Web Applications

Versions

Version
4.1
3.6
3.5.1
3.5
3.4
3.3
3.2
3.1
3.0