Testing av nettenester

Dokumentasjon for korleis ein kan teste nettenester.

1   Brukerinfo og gløymd-passord-tenesta

Brukerinfo og gløymd-passord-tenesta er begge utvikla i PHP og treng omtrent det samme oppsettet for å bli testa. Vi har tilgang til testmiljøet w3utv-ws01.uio.no, som har omtrent samme versjon av program som i produksjonsmiljøet. Vi har fått vår eiga testmappe der, under /www/var/virtual/no.uio.w3utv-ws01_443/htdocs/cerebrum. Nettsidene er berre tilgjengelege frå UiO-nettet: https://w3utv-ws01.uio.no/cerebrum/

Merk at testmiljøet og filer som leggast i testmiljøet er opent for mange andre utviklarar. Legg aldri privatnøklar, passord eller anna som brukast i produksjonsmiljøet her.

Portane som er opna frå w3utv-ws01.uio.no til cere-utv01.uio.no er 8950-8970.

Eg pleier redigere koden på kontormaskina på mitt eige heimeområde, og deretter synce det over til testmiljøet. Merk at du ikkje har tilgang til heimeområdet ditt på w3utv-ws01, så du må til dømes bruke rsync.

  1. Lag deg di eiga config.php og legg denne inn i mappa www_docs/ som du vil bruke, eventuelt lag ein symlink til den.

  2. Lag ein symlink til /clients/web/phplib ein stad under /clients/brukerinfo/, og oppdater config.php:LINK_LIB med denne lokasjonen.

  3. Generer klient-sertifikat. Dette kan til dømes leggast under data/passwords/ eller det du set opp som protected-mappa.

  4. Synk over koden til w3utv-ws01. Lag deg di eiga undermappe for å unngå konfliktar med andre testarar. Det anbefalast å lage eit skript for synkinga, med path til dei ulike instansane, og kommandoen:

    rsync -rav --copy-links --chmod=a+rwX --group --delete-excluded --delete --exclude='*~' \
          --exclude='.svn' --exclude'.*.swp' $FILES w3utv-ws01.uio.no:$DEST
    
  5. Loggar er tilgjengelege: /www/var/log/wofh/wofh.log Namnet er av historiske årsaker, men her loggast alt av PHP-loggen under /cerebrum.

2   Gamle passordsida

Bruker cgi, så må testast på w3utv-wh01.uio.no. Vi har fått mappa/www/var/virtual/no.uio.w3utv-wh01_443/cgi-bin/cerebrum/. Lag deg undermapper for tenestene her.

TODO: Meir dokumentasjon om dette. Sjå også dokumentasjon rundt CWEB for oppsett, sidan begge bruker cgi.

TODO: Fann error-loggen under /www/var/log/httpd/no.uio.w3utv-wh01_443/, men ser ikkje ut til å ha lesetilgang.

3   CWEB

Bruker cgi, så må testast på w3utv-wh01.uio.no. Vi har fått mappa/www/var/virtual/no.uio.w3utv-wh01_443/cgi-bin/cerebrum/. Lag deg undermapper for tenestene her. Sjå også spesifikasjonen til CWEB for meir info.

TODO. Lenge sidan det er utvikla noko som helst for cweb...

4   WebID / Virthome

Oppsett / prodsetjing av WebID er lite dokumentert, så her er ei enkel framgangsmåte for å setje opp testmiljø for UiO.

  1. Lag ei kopi av config-malen: cp cerebrum/clients/web/virthome/config/{common.example,common}.php.
  2. Bruk framgangsmåten for Brukerinfo for å lage di eiga kopi av cerebrum/clients/web/virthomepå w3utv-ws01.
  3. Endre eigar-gruppe til cereutv for kopien på w3utv-ws01: chown -R cereutv <di kopi av virthome>.

4.1   Konfigurasjon av common.php:

Oppsettet av config-fila common.php er relativt likt som oppsettet av Brukerinfo eller Individuation, med eitt par unntak:

  • Konstanten LINK_SIMPLESAML peiker alt på eitt fungerande SIMPLESAML-rammeverk for w3utv-ws01 (/usit/w3utv-ws01/www/var/data/virthome/simplesamlphp). For at WebID-klienten skal få lesetilgang til filene på dette området, må klienten eigast av gruppa cereutv. Dette er orsaka til eigarskiftet i steg 3.
  • Konstanten VIRTHOME_PRE kan setjast til '/' for testing på w3utv-ws01. Dersom du får problemer med innlogginga, kan det hjelpe å slette alle cookies tilknytta w3utv-ws01 før du prøver igjen. Merk også at du må bruke Feide Test som SSO når du logger inn i test-instansen din av WebID.
  • ACCOUNT_SUFFIX: '@webid.uio.no'
  • WAUSER: 'webapp' er ein fin brukar
Av cerebrum
Publisert 5. mai 2014 18:06