Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

About Ekstazi algorithm #1

Closed
Igorxp5 opened this issue Mar 19, 2022 · 0 comments
Closed

About Ekstazi algorithm #1

Igorxp5 opened this issue Mar 19, 2022 · 0 comments
Labels
documentation Improvements or additions to documentation

Comments

@Igorxp5
Copy link
Owner

Igorxp5 commented Mar 19, 2022

Ekstazi

Ekstazi is a Regression Test Selection algorithm. The best scenario is always run all test cases, but this takes time. This is where Ekstazi comes in, the algorithm selects the test cases based on the last changes on the project.

Overview

See below the main characteristics of Ekstazi:

  • Ekstazi is algorithm for non-blackbox tests. So we need the source code to use it.
  • Original Ekstazi doesn't use version control system like Git or SVN.
  • Ekstazi figures out what project files each test case "touch", in runtime. It saves the depedencies of each test.
  • Ekstazi calculates the hash of the content of each project file "touched" in the test cases to identify changes in the files.
  • Based on previous testing round and last project changes, Ekstazi selects just test cases that contains features update.
  • Original Ekstazi was made in Java. Its approach is change the JVM to figure out the dependencies of the test cases.

TODO: Move this to a Wiki page.

@Igorxp5 Igorxp5 added the documentation Improvements or additions to documentation label Mar 19, 2022
@Igorxp5 Igorxp5 pinned this issue Mar 19, 2022
@Igorxp5 Igorxp5 closed this as completed Apr 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

1 participant