Sono in esecuzione la versione più recente di Codeception su una piattaforma WAMP - La mia accettazione è molto semplice, ma funziona bene (vedi sotto):Codeception - Prove di accettazione funzionano, ma Test funzionale Non
$I = new WebGuy($scenario);
$I->wantTo('Log in to the website');
$I->amOnPage('/auth/login');
$I->fillField('identity','[email protected]');
$I->fillField('password','password');
$I->click('Login');
In poche parole - Controlla che la pagina sia 'auth/login' compila 2 campi modulo e fa clic sul pulsante di accesso. Funziona senza problemi.
Ecco il mio identico test funzionale:
$I = new TestGuy($scenario);
$I->wantTo('perform actions and see result');
$I->amOnPage('/auth/login');
$I->fillField('identity','[email protected]');
$I->fillField('password','password');
$I->click('Login');
Quando eseguo questo dalla riga di comando ottengo il seguente errore (non la piena errore, ma abbastanza per capire il problema):
1) Couldn't <-[35;1mperform actions and see result<-
[0m in <-[37;1LoginCept.php<-[0m <-41;37mRuntimeException:
Call to undefined method TestGuy::amOnPage<-[0m.......
La mia suite di accettazione dispone di moduli 'PhpBrowser' & 'WebHelper' abilitati, la suite funzionale ha 'FileSystem' & 'TestHelper' abilitato (all'interno dei file functional.suite.yml admission &).
Ovviamente la funzione amOnPage() è il problema, tuttavia sono convinto che amOnPage() dovrebbe funzionare in test di accettazione e di funzionalità? O mi sbaglio - anche - qualcuno può spiegare cosa significano i numeri ad esempio '< - [35; 1m' che appaiono
UPDATE: Ho provato ad aggiungere il modulo 'WebHelper' al functional.suite.yml ma non lo faccio vedere l'amOnPage() generato automaticamente nel file TestGuy.php - qualche idea?
I miei file di configurazione sono al di sotto:
webguy
class_name: WebGuy
modules:
enabled:
- PhpBrowser
- WebHelper
config:
PhpBrowser:
url: 'http://v3.localhost/'
TestGuy
class_name: TestGuy
modules:
enabled: [Filesystem, TestHelper, WebHelper]
Grazie @Elkan ho aggiunto 'PhpBrowser' al mio file functional.suite.yml ed eseguire il comando 'codecept costruire' e ricevere un "modulo di PhpBrower Il modulo PhpBrowser non è configurato. Controlla i campi richiesti Tutte le idee su quello che faccio da qui? – Zabs
Nota .. Sto usando CodeIgniter .. e ho scoperto che non esiste un modulo per questo ancora in questo momento :( – Zabs
sì, nessun modulo per CI disponibile per ora, ma usa PhpBrowser per i test funzionali, la differenza di velocità non è tanto quando usa PhpBrowser (basato su curl) e il modulo nativo framework (basato sul browser-kit di symfony).Torna all'errore, è necessario configurare PhpBrowser, vedere i documenti del modulo sul sito di codeception :) – Elkan