3 Commits

Author SHA1 Message Date
a734f66f22 added testing paragraph 2025-07-10 15:13:02 +02:00
97019fb223 added testing paragraph 2025-07-10 11:27:44 +02:00
5ba0e4aecf Merge pull request #10 from ylxdre/feature/issue7
Feature/issue7
2025-07-09 12:32:43 +02:00
3 changed files with 38 additions and 4 deletions

View File

@@ -43,9 +43,15 @@
* clubs.json - list of clubs with relevant information. You can look here to see what email addresses the app will accept for login. * clubs.json - list of clubs with relevant information. You can look here to see what email addresses the app will accept for login.
5. Testing 5. Testing
- unit and integration tests :
You are free to use whatever testing framework you like-the main thing is that you can show what tests you are using. All tests are made with Pytest, except <code>test_book_old.py</code> which uses Ward
Run the tests by using : `pytest -s -v --cov=. --ignore=tests/test_book_old.py`
We also like to show how well we're testing, so there's a module called You'll see the result, the list and the coverage rapport
[coverage](https://coverage.readthedocs.io/en/coverage-5.1/) you should add to your project.
you can also run `ward` from the root folder to see the two ward tests
- performance tests :
run the app : `FLASK_APP=server.py flask run`
then run `locust -f tests/performance_test/locustfile.py` from the root directory and connect with browser to `
http://0.0.0.0:8089` and launch tests from the web interface

View File

View File

@@ -0,0 +1,28 @@
from locust import HttpUser, task
class PerfConnectionTest(HttpUser):
@task
def index(self):
response = self.client.get("/")
@task
def login(self):
response = self.client.post("/showSummary", {"email": "admin@irontemple.com"})
class PerfBookTest(HttpUser):
@task
def bookPlaces(self):
response = self.client.post("/showSummary", {"email": "admin@irontemple.com"})
response = self.client.post("/purchasePlaces", {"club": "Iron Temple", "competition": "Fall Classic", "places": 2})
class PerfBoard(HttpUser):
@task
def board(self):
response = self.client.get("/points")