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
Show file tree
Hide file tree
Changes from 25 commits
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
2 changes: 1 addition & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ on:
push:
branches-ignore:
- 'dependabot/**' #avoid duplicates: only run the PR, not the commit
- 'gh-pages' #github pages do not trigger all tests
- 'gh-pages' #GitHub pages do not trigger all tests
tags-ignore:
- 'v*' #avoid rerun existing commit on release
pull_request:
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,7 @@ pom.xml.versionsBackup
TESTS-TestSuites.xml
*.db
*/dat/out
#Directories
.idea
# to allow each developer customize sonarlint
org.sonarlint.eclipse.core.prefs
115 changes: 107 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,113 @@
[![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)

# samples-giis-template
<h1 align="center"> RETORCH: Resource-aware End-to-End Test Orchestration</h1>
<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 >
</div>
augustocristian marked this conversation as resolved.
Show resolved Hide resolved

Template project, includes:
- Configuration of a maven multimodule 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)
This repository contains a series of components that compose RETORCH, an E2E test orchestration framework. It's primary
goal is to optimize E2E test execution by reducing both the execution time and the number of unnecessary resource
redeployment's.

See the general contribution policies and guidelines for *giis-uniovi* at
**NOTE: In this initial version, only the annotations to identify the resources and access modes have been included.
Additional components will be added in future releases.**

[Explore the docs](https://github.com/giis-uniovi/retorch) - [Report Bug](https://github.com/giis-uniovi/retorch/issues) -
[Request Feature](https://github.com/giis-uniovi/retorch/issues)

## Contents

- [RETORCH: Resource-aware End-to-End Test Orchestration:]()
- [Quick Start](#quick-start)
- [RETORCH Annotations](#retorch-annotations)
- [Contributing](#contributing)
- [Contact](#contact)
- [Citing this work](#citing-this-work)
- [Acknowledgments](#acknowledgments)

## Quick-start

[TO-DO]

[(Back to the top)](#contents)
augustocristian marked this conversation as resolved.
Show resolved Hide resolved

## RETORCH Annotations

The RETORCH Tool provides a set of custom annotations to define and manage resources used in end-to-end testing. These
annotations allow testers to group, schedule, and characterize resources. To execute test cases using the RETORCH Tool,
each test case must be annotated with at least one access mode and resource.

The tester needs to specify the access mode using the following attributes:

- `resID`: Resource identifier for the access mode.
- `concurrency`: The upper bound of test cases that can access the resource concurrently.
- `sharing`: Allows sharing the resource between multiple test cases.
- `accessMode`: The type of access mode performed by the test case.

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

Each access mode annotation corresponds to a specific resource, which must be annotated with the following attributes:

- `resID`: A unique identifier for the resource.
- `replaceable`: A list of resources that can replace the current one.

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

The following code snippets illustrate a test case annotated with multiple resources and access modes:

```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")
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);
}
```

[(back to the top)](#contents)

## 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).

[(back to the top)](#contents)

## Contact

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

[(back to the top)](#contents)

## Citing this work

RETORCH E2E 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.
augustocristian marked this conversation as resolved.
Show resolved Hide resolved
https://doi.org/10.1007/s11219-020-09505-2 - [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)

[(back to the top)](#contents)

## Acknowledgments

This work has been developed under the TestBUS (PID2019-105455GB-C32) project supported
by the [Ministry of Science and Innovation (SPAIN)](https://www.ciencia.gob.es/)

[(back to the top)](#contents)
Loading