Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/parseablehq/quest
Containerised testing toolkit for Parseable. Provides API testing, Load testing and data correctness checks.
https://github.com/parseablehq/quest
hacktoberfest
Last synced: about 2 months ago
JSON representation
Containerised testing toolkit for Parseable. Provides API testing, Load testing and data correctness checks.
- Host: GitHub
- URL: https://github.com/parseablehq/quest
- Owner: parseablehq
- License: agpl-3.0
- Created: 2023-02-08T01:55:44.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-27T14:18:54.000Z (3 months ago)
- Last Synced: 2024-10-28T10:15:58.348Z (2 months ago)
- Topics: hacktoberfest
- Language: Go
- Homepage:
- Size: 7.38 MB
- Stars: 6
- Watchers: 1
- Forks: 8
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Quest
This repository contains integration tests and load generation tests for Parseable server. Tests are written in shell script and bundled in a container.
### Use pre-built container
Pre-built container is available on GitHub Container Registry. You can pull the container using the following command:
```
docker pull ghcr.io/parseablehq/quest:main
```### Build test container locally
```
docker build . -t parseable/quest:v0.1
```### Running tests
Use the below format to run tests against a Parseable server.
Positional arguments for the 'smoke' or 'load' mode:
```
1. Test name: `smoke` or `load`
2. Server URL
3. Username
4. Password
8. MinIO URL (Shouldn't be prefixed with `http://`. e.g. `localhost:9000`. Note that `https` isn't supported yet. )
9. MinIO Access Key (User)
10. MinIO Secret Key (Password)
11. MinIO Bucket (name of the bucket Parseable is configured to ingest into)
```Additional positional arguments for the 'load' mode
```
5. (Optional) Number of different json schemas to send to a stream
6. (Optional) Number of virtual users (Refer K6 [documentation on VUs](https://k6.io/docs/get-started/running-k6/#adding-more-vus))
7. (Optional) Duration of the test
```Example usage:
```
docker run ghcr.io/parseablehq/quest:main smoke https://demo.parseable.io parseable parseable
```If you want to run tests against a local Parseable server, you can use the following command:
```
docker run --network="host" ghcr.io/parseablehq/quest:main load http://host.docker.internal:8000 admin admin 20 10 5m
```#### Kubernetes
To run tests against a Parseable server running on Kubernetes, you can use the Job resource. Refer [sample job manifest](./kubernetes/job.yaml). Modify the `command` section to run the tests you want. You can run the job using the following command:
```
kubectl apply -f kubernetes/job.yaml
```