Sovellus on testattavissa Azuressa
- Luo virtuaaliympäristö komennolla
python3 -m venv venv
- Siirry virtuaaliympäristöön komennolla
source venv/bin/activate
- Asenna riippuvuudet komennolla
pip install -r requirements.txt
- Tallenna .env-tiedostoon juurihakemistossa ympäristömuuttujien määrittelyt:
AZURE_POSTGRESQL_CONNECTIONSTRING='host=localhost:5432 dbname=tietokannannimi user=käyttäjätähän password=salasanatähän' SECRET_KEY=jokusecretkeytähän
tietokannannimi
on tätä sovellusta varten omalle koneellesi luomasi tietokannan nimikäyttäjätähän
on käyttäjänimesi PostGreSQL:ssä omalla koneellasisalasanatähän
on kyseisen käyttäjän salasana- (Jos et ole vielä asettanut PostGreSQL:ssä salasanaa, niin sen voi tehdä SQL-komennolla
ALTER USER käyttäjätähän WITH PASSWORD 'salasanatähän';
) jokusecretkeytähän
on mikä vain vapaasti valitsemasi merkkijono
- Käynnistä sovellus ajamalla komento
flask -A app/app run
juurihakemistossa
- Käytä Azure App Servicesiä, joka sisältää PostqreSQL-tietokannan
- Siirry Deployment Centeriin, lisää Git repositorio ja tallenna
- Suorita Sync
- Siirry Azuressa: Configuration -> General settings ja lisää Startup Command
gunicorn --bind=0.0.0.0 --timeout 600 startup:app
- Käynnistä palvelin
- Suorita yksikkötestit virtuaaliympäristössä ajamalla komento
pytest
juurihakemistossa - Suorita Robot framework -testit käynnistämällä ensin sovellus yhdellä komentorivillä komennolla
flask -A app/app run
(aivan kuten yllä) ja ajamalla sitten toisella komentorivillä samaan tapaan virtuaaliympäristössä sovelluksen juurihakemistossa komentorobot tests
- (ChromeDriverista tai muista Drivereista ei tarvitse enää huolehtia itse, sillä nykyään Selenium asentaa tarvittavan Driverin ja kaiken sen tarvitseman automaattisesti)
- Suorita Pylint-tarkastukset ajamalla virtuaaliympäristössä komento
pylint app tests
projektin juurihakemistossa - Muodosta haarautumakattavuusraportti ajamalla virtuaaliympäristössä komento
coverage run --branch -m pytest; coverage html
projektin juurihakemistossa
- Pushed to GitHub
- Fills out acceptance criteria
- Tested manually and automatically