Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yanirta/assertio
assertio ;) - traceable testing
https://github.com/yanirta/assertio
appium assert assertions selenium testing testing-tools unit-testing unittest validation validation-engine validation-library
Last synced: 16 days ago
JSON representation
assertio ;) - traceable testing
- Host: GitHub
- URL: https://github.com/yanirta/assertio
- Owner: yanirta
- Created: 2019-07-21T08:45:35.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2022-05-20T21:07:16.000Z (over 2 years ago)
- Last Synced: 2024-12-09T14:07:07.885Z (27 days ago)
- Topics: appium, assert, assertions, selenium, testing, testing-tools, unit-testing, unittest, validation, validation-engine, validation-library
- Language: Java
- Homepage:
- Size: 253 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# assertio ;) - make testing visible (concept version)
assertio is a visibility framework that built to make testing more tracable with built in benefits.Out of the box key features:
- Collect & trace historic tests executions.
- Display reports on tests performance and execution.
- Unify reporting from multiple nodes and projects.
- Multi language * framework * platform support (currently Java & JavaScript).
- Supports regression testing, pass or fail tests based on previous results.
- Central point of evaluation, which means less bugs in writing tests.
- Realtime indication on test execution.## __The dashboard__
assertio dashboard is the central location to see all the test executions and their results.
- Starting from the tests list on the left-hand side, the dashboard reflects historically how the test was stable and succeeding.
- Selecting one of the tests will reveal a list of individual executions, when diving into one of them will show all the available data from that point in time.The components:
- assertio server - Collects the data, report, further analysis & processing.
- assertio client libraries - assertio-sdk to send the test-data.#### Disclaimer
This is a minimal version to demonstrate the concept.
Components and api's are subject to changes.## [__The server__](./server)
- Requirements
- python 3.7 and above (other versions just weren't tested)
- pip libraries: flask, flask_cors, connexion, and tinydb
- nodeJS v12.6.0 (and above) with npm
- preparing
- clone the server folder (or the entire project)
- in terminal (or cmd console) go to 'server/webapp' folder (`cd server/webapp`)
- run `npm i`
- run `npm run build`
- Starting
- in the 'server' folder (terminal or console) run `python -m core`.
- Validation
- web interface: head to http://localhost:8080 (https isn't supported yet).
Note that before running any validations with one of the client libraries, a blank page will be displayed (my bad, TBD)
- api interface: head to http://localhost:8080/api/0.0.1/ui swagger interface will be displayed.## [__Client libraries__](./clients)
- Java - in new or existing project
- installation (using maven)
- insert the following dependency in `project/dependencies` section of your `pom.xml` file:
```
com.github.yanirta
assertio-java-client
RELEASE
```- usage
- create a new file 'assertioWelcomeTest.java' in your 'src/java/test/' folder and insert the following code:
```java
import io.assertio.assertio;
import org.junit.Test;public class assertioTest {
@Test
public void assertBasics() {
assertio assertion = new assertio("http://localhost:8080/api/0.0.1", "NA");
assertion.assertEquals(5, 1 + 4, "My first assertio validation test");
}
}
```
- run your code thorugh console/terminal via the command 'mvn test'
- JavaScript - in new or existing project
- installation (using npm):
- in your project-root library console/terminal run `npm i assertio-js-client`
- usage
- create a new file 'assertioWelcomeTest.js' in your 'src/java/test/' folder and insert the following code::
```JavaScript
var assertio = require('assertio-js-client').default;describe("my first assertio test", () => {
var client = new assertio("NA", "http://localhost:8080/api/0.0.1");it("making my first test", () => {
return client.assertEquals(5, 2 + 3, "My first assertio validation");
});
})
```## [__The api__](./api)
The api and the lower level of both the server and the clients were built with swagger/openapi using
[openapi generatior](https://github.com/OpenAPITools/openapi-generator).
In order to communicate directy with the api you can go to http://localhost:8080/api/0.0.1/ui after starting the server.## The author
[Yanir Taflev - freelancer consultant and developer](https://il.linkedin.com/in/yanirta)
Owner of [qualitalks](https://qualitalks.com)
[My Gihub profile](https://github.com/yanirta)## License
MIT