En aquesta secció, aprendrem com provar i desplegar la nostra aplicació web PHP. Aquest és un pas crucial per assegurar-nos que la nostra aplicació funcioni correctament i estigui llesta per ser utilitzada pels usuaris finals.
- Proves
1.1 Tipus de Proves
Hi ha diversos tipus de proves que podem realitzar per assegurar-nos que la nostra aplicació funcioni correctament:
- Proves Unitàries: Proves que verifiquen la funcionalitat de components individuals del codi.
- Proves d'Integració: Proves que verifiquen la interacció entre diferents components del sistema.
- Proves Funcionals: Proves que verifiquen que l'aplicació compleix amb els requisits funcionals.
- Proves de Rendiment: Proves que mesuren la velocitat, escalabilitat i estabilitat de l'aplicació sota càrrega.
1.2 Eines de Prova
Algunes eines populars per realitzar proves en PHP són:
- PHPUnit: Una eina per a proves unitàries.
- Behat: Una eina per a proves de comportament.
- Selenium: Una eina per a proves funcionals i d'integració.
1.3 Exemple de Prova Unitària amb PHPUnit
Instal·lació de PHPUnit
Per instal·lar PHPUnit, podem utilitzar Composer:
Creació d'una Prova Unitària
Suposem que tenim una classe Calculator
amb un mètode add
:
Podem crear una prova unitària per aquest mètode:
<?php use PHPUnit\Framework\TestCase; class CalculatorTest extends TestCase { public function testAdd() { $calculator = new Calculator(); $result = $calculator->add(2, 3); $this->assertEquals(5, $result); } }
Executar les Proves
Per executar les proves, podem utilitzar la següent comanda:
- Desplegament
2.1 Preparació per al Desplegament
Abans de desplegar la nostra aplicació, hem de realitzar algunes tasques de preparació:
- Minificació de Fitxers: Minificar els fitxers CSS i JavaScript per reduir la mida de les descàrregues.
- Optimització d'Imatges: Comprimir les imatges per reduir la mida dels fitxers.
- Configuració de l'Entorn: Assegurar-nos que les configuracions d'entorn (com les variables d'entorn) estiguin correctament configurades.
2.2 Eines de Desplegament
Algunes eines populars per al desplegament d'aplicacions PHP són:
- FTP/SFTP: Per transferir fitxers al servidor.
- Git: Per gestionar el codi i desplegar-lo al servidor.
- Capistrano: Una eina de desplegament automatitzat.
2.3 Desplegament amb Git
Suposem que volem desplegar la nostra aplicació utilitzant Git. Els passos generals són:
-
Inicialitzar un Repositori Git:
git init git add . git commit -m "Initial commit"
-
Crear un Repositori Remot (per exemple, a GitHub) i afegir-lo com a remot:
git remote add origin https://github.com/usuari/repo.git git push -u origin master
-
Configurar el Servidor per Desplegar des de Git:
- Clonar el repositori al servidor:
git clone https://github.com/usuari/repo.git /ruta/al/projecte
- Clonar el repositori al servidor:
-
Desplegar Canvis:
-
Pujar els canvis al repositori remot:
git add . git commit -m "Descripció dels canvis" git push origin master
-
Actualitzar el codi al servidor:
cd /ruta/al/projecte git pull origin master
-
2.4 Desplegament Automatitzat amb Capistrano
Capistrano és una eina de desplegament automatitzat que pot simplificar el procés de desplegament. A continuació es mostra un exemple bàsic de com utilitzar Capistrano per desplegar una aplicació PHP.
Instal·lació de Capistrano
Per instal·lar Capistrano, necessitem Ruby i Bundler. Després, podem instal·lar Capistrano:
Configuració de Capistrano
Creem un fitxer Capfile
a l'arrel del nostre projecte:
require 'capistrano/setup' require 'capistrano/deploy' # Incloure tasques addicionals require 'capistrano/composer' # Carregar les tasques de configuració Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r }
Després, configurem els fitxers deploy.rb
i production.rb
:
config/deploy.rb:
lock '3.16.0' set :application, 'nom_de_la_aplicacio' set :repo_url, 'https://github.com/usuari/repo.git' set :deploy_to, '/ruta/al/projecte' append :linked_files, 'config/database.php' append :linked_dirs, 'storage', 'vendor' set :keep_releases, 5
config/deploy/production.rb:
Desplegar amb Capistrano
Per desplegar l'aplicació, utilitzem la següent comanda:
Conclusió
En aquesta secció, hem après com provar i desplegar la nostra aplicació web PHP. Les proves ens ajuden a assegurar-nos que la nostra aplicació funcioni correctament, mentre que el desplegament ens permet posar la nostra aplicació a disposició dels usuaris finals. Amb aquestes habilitats, estem preparats per llançar aplicacions PHP robustes i fiables.
Curs de Programació PHP
Mòdul 1: Introducció a PHP
- Què és PHP?
- Configuració de l'Entorn de Desenvolupament
- El teu Primer Script PHP
- Sintaxi i Variables de PHP
- Tipus de Dades en PHP
Mòdul 2: Estructures de Control
Mòdul 3: Funcions
- Definició i Crida de Funcions
- Paràmetres de Funció i Valors de Retorn
- Àmbit de Variables
- Funcions Anònimes i Closures
Mòdul 4: Arrays
Mòdul 5: Treballant amb Formularis
Mòdul 6: Treballant amb Fitxers
- Lectura i Escriptura de Fitxers
- Funcions de Gestió de Fitxers
- Permisos de Fitxers
- Funcions de Directori
Mòdul 7: Programació Orientada a Objectes (OOP)
- Introducció a OOP
- Classes i Objectes
- Propietats i Mètodes
- Herència
- Interfícies i Classes Abstractes
- Traits
Mòdul 8: Treballant amb Bases de Dades
- Introducció a les Bases de Dades
- Connexió a una Base de Dades MySQL
- Realització d'Operacions CRUD
- Ús de PDO per a la Interacció amb Bases de Dades
- Seguretat en Bases de Dades
Mòdul 9: Tècniques Avançades de PHP
- Gestió d'Errors i Excepcions
- Sessions i Cookies
- Expressions Regulars
- Treballant amb JSON i XML
- PHP i Serveis Web
Mòdul 10: Frameworks PHP i Millors Pràctiques
- Introducció als Frameworks PHP
- Començant amb Laravel
- Arquitectura MVC
- Millors Pràctiques en Desenvolupament PHP
- Proves i Depuració