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

Customization of the template content closes #3 #4

Merged
merged 26 commits into from
Jul 21, 2023
Merged
Changes from 1 commit
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
db3f652
Adding the new project and including it in the master pom.xml
augustocristian Jul 20, 2023
e0d1112
Change namespace name and adding configuration files of intellij
augustocristian Jul 20, 2023
91f1f2d
Removing the rest of the modules not used
augustocristian Jul 20, 2023
a7e2fdc
Removing the rest of the modules not used
augustocristian Jul 20, 2023
37cf881
Granting access from intelliJ
augustocristian Jul 20, 2023
4396413
Solved two little problems with the pom.xml
augustocristian Jul 20, 2023
cd4ef4e
Little changes in the sonar-project.properties and the pom.xml
augustocristian Jul 20, 2023
dca04e5
Last commit close #3
augustocristian Jul 20, 2023
f810778
Removing .idea directory and adding to the gitignore
augustocristian Jul 20, 2023
9a27bbb
Adding the descriptions requested by Javier and the url of the reposi…
augustocristian Jul 20, 2023
7b1f163
Adding the custom sonar-project.properties project key
augustocristian Jul 20, 2023
544d0a4
Adding the .settings to the project (was in the gitignore)
augustocristian Jul 20, 2023
74384cc
Removing some spelling mistakes, check that the pipeline suceeed
augustocristian Jul 20, 2023
ad51c9a
Solved problem with publishing??
augustocristian Jul 20, 2023
887f40e
Merge branch 'main' into ft_customize_template_content
augustocristian Jul 21, 2023
5d60630
First version of the README.md
augustocristian Jul 21, 2023
9b5b8ca
First version of the README.md
augustocristian Jul 21, 2023
fc8a480
All links working
augustocristian Jul 21, 2023
22129b6
Adding the note that clarifies what is included in this repository
augustocristian Jul 21, 2023
fc5eedb
Adding the note that clarifies what is included in this repository
augustocristian Jul 21, 2023
4db8417
Removed HTML from the index
augustocristian Jul 21, 2023
a616b16
Removed HTML from most of the sites
augustocristian Jul 21, 2023
8eeae37
Several spelling mistakes solved
augustocristian Jul 21, 2023
3b2f607
Several spelling mistakes solved, citation in the correct format
augustocristian Jul 21, 2023
d4a5cb9
Formatting the document
augustocristian Jul 21, 2023
b2bf34c
Removing back to the top, journal name in italics, removed all html
augustocristian Jul 21, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
130 changes: 122 additions & 8 deletions README.md
augustocristian marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,128 @@
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=my%3Aretorch&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=my%3Aretorch)
[![Maven Central (annotations)](https://img.shields.io/maven-central/v/io.github.giis-uniovi/retorch-annotations)](https://central.sonatype.com/artifact/io.github.giis-uniovi/retorch-annotations)

# RETORCH: Resource-aware End-to-End Test Orchestration
#

Template project, includes:
- Configuration of a maven multi-module java project
- Aggregated test reports (surefire and junit style)
- SonarQube static test (includes coverage results)
- Publish a snapshot for each branch to GitHub Packages
- Publish releases to Maven Central (deactivated)
<!-- PROJECT LOGO -->
<br />
<div align="center">
<a href="https://giis.uniovi.es/?lang=en">
<img src="https://giis.uniovi.es/icons/giis-color-medium.gif" alt="Logo" width="110" height="75">
</a>

See the general contribution policies and guidelines for *giis-uniovi* at
<h3 align="center">RETORCH: Resource-aware End-to-End Test Orchestration</h3>

<p align="center">
This repository contains a series of components that compose RETORCH, a E2E test orchestration rchestration framework which aims
augustocristian marked this conversation as resolved.
Show resolved Hide resolved
to optimize E2E test execution reducing the execution time and the number of unnecessary resource
redeployment's.
<br />
<a href="https://github.com/giis-uniovi/retorch"><strong>Explore the docs »</strong></a>
<br />
<br />
<a href="https://github.com/giis-uniovi/retorch">View Demo</a>
·
<a href="https://github.com/giis-uniovi/retorch/issues">Report Bug</a>
·
<a href="https://github.com/giis-uniovi/retorch/issues">Request Feature</a>
</p>
</div>
augustocristian marked this conversation as resolved.
Show resolved Hide resolved


<!-- TABLE OF CONTENTS -->
<details>
<summary>Table of Contents</summary>
<ol>
<li><a href="#Quick-start">Quick-start</a></li>
<li><a href="#RETORCH-annotations">RETORCH Annotations</a></li>
<li><a href="#Contributing">Contributing</a></li>
<li><a href="#contact">Contact</a></li>
<li><a href="#Citing-this-work">Citing this work</a></li>
<li><a href="#acknowledgments">Acknowledgments</a></li>
</ol>
</details>

## Quick-start

[TO-DO]

## RETORCH annotations

RETORCH Tool provides a series of custom annotations to characterize the resources employed in end-to-end testing,
group, and schedule them. To use RETORCH Tool to execute the test cases, each test case needs to be annotated with one
access mode and resource at least. The tester needs to specify the access mode with:

- resID: Resource that belongs to access mode
- concurrency: upper bound of test cases that can access concurrently to the Resource
- sharing: allows sharing the resource between several test cases
- accessMode: type of access mode performed by the test case

```java
@AccessMode(resID = "LoginService", concurrency = 10, sharing = true, accessMode = "READONLY")
```

Each access mode annotation belongs to a concrete resource, the resource needs to be annotated with the following
attributes:

- resID: unique resource identifier
- replaceable: list of resources that can replace the current ones

```java
@Resource(resID = "LoginService", replaceable = {})
```

The following code snippets illustrates a tes case annotated with several resources and access modes:
augustocristian marked this conversation as resolved.
Show resolved Hide resolved

```java
@Resource(resID = "LoginService", replaceable = {})
@AccessMode(resID = "LoginService", concurrency = 10, sharing = true, accessMode = "READONLY")
@Resource(resID = "OpenVidu", replaceable = {"OpenViduMock"})
@AccessMode(resID = "OpenVidu", concurrency = 10, sharing = true, accessMode = "NOACCESS")
@Resource(resID = "Course", replaceable = {"Forum"})
@AccessMode(resID = "Course", concurrency = 10, sharing = true, accessMode = "READONLY")
@ParameterizedTest
@MethodSource("data")
augustocristian marked this conversation as resolved.
Show resolved Hide resolved
void forumLoadEntriesTest(String usermail,String password,String role){


this.user=setupBrowser("chrome",TJOB_NAME+"_"+TEST_NAME,usermail,WAIT_SECONDS);
driver=user.getDriver();
this.slowLogin(user,usermail,password);//24 lines
```
<p align="right">(<a href="#readme-top">back to top</a>)</p>

## Contributing

See the general contribution policies and guidelines for *giis-uniovi* at
[CONTRIBUTING.md](https://github.com/giis-uniovi/.github/blob/main/profile/CONTRIBUTING.md).
<p align="right">(<a href="#readme-top">back to top</a>)</p>
augustocristian marked this conversation as resolved.
Show resolved Hide resolved

## Contact

Cristian Augusto - [Contact me!](mailto:augustocristian@uniovi.es)

Project
Link: [https://github.com/giis-uniovi/retorch](https://github.com/giis-uniovi/retorch)
augustocristian marked this conversation as resolved.
Show resolved Hide resolved

<p align="right">(<a href="#readme-top">back to top</a>)</p>

## Citing this work
RETORCH test orchestration framework:
```
Cristian Augusto, Jesús Morán, Antonia Bertolino, Claudio de la Riva, and Javier Tuya,
“RETORCH: an approach for resource-aware orchestration of end-to-end test cases,”
Software Quality Journal, vol. 28, no. 3, 2020.
https://doi.org/10.1007/s11219-020-09505-2
```
augustocristian marked this conversation as resolved.
Show resolved Hide resolved
[Full Article available](https://link.springer.com/article/10.1007/s11219-020-09505-2) - [Authors version](https://digibuo.uniovi.es/dspace/bitstream/handle/10651/55405/RETORCHSQJExtension_BUO.pdf;jsessionid=0E661594C8732B8D2CA53636A31E4FD5?sequence=1) -
[Download citation](https://citation-needed.springer.com/v2/references/10.1007/s11219-020-09505-2?format=refman&flavour=citation)

<p align="right">(<a href="#readme-top">back to top</a>)</p>

## Acknowledgments

This work has been developed under the TestBUS (PID2019-105455GB-C32) and EQUAVEL (PID2022-137646OB-C32) projects supported by [Ministry of Science and Innovation (SPAIN)](https://www.ciencia.gob.es/)
augustocristian marked this conversation as resolved.
Show resolved Hide resolved



<p align="right">(<a href="#readme-top">back to top</a>)</p>