You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/guide/pl/database.migration.txt
+4-4Lines changed: 4 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -140,7 +140,7 @@ class m101129_185401_create_news_table extends CDbMigration
140
140
}
141
141
~~~
142
142
143
-
Jednakże łatwiejszym sposobem uzyskania wparcia dla transakcyjności jest zaimplementowanie metody `safeUp()` zamiast `up()` oraz `safeDown()` zamiast`down()`. Na przykład:
143
+
Jednakże łatwiejszym sposobem uzyskania wparcia dla transakcyjności jest zaimplementowanie metody `safeUp()` zamiast `up()` oraz `safeDown()` zamiast`down()`. Na przykład:
144
144
145
145
~~~
146
146
[php]
@@ -211,7 +211,7 @@ yiic migrate down [step]
211
211
212
212
gdzie opcjonalny parametr `step` określa jak wiele migracji zostanie odwróconych. Domyślnie przyjmuje wartość 1 co oznacza odwracanie ostatnio zaaplikowanej migracji.
213
213
214
-
Tak jak wspominaliśmy wcześniej nie wszystkie migracje można odwracać. Próbując odwrócać nieodwracalną migrację otrzymamy wyjątek i proces odwracania zostanie przerwany.
214
+
Tak jak wspominaliśmy wcześniej nie wszystkie migracje można odwracać. Próbując odwrócić nieodwracalną migrację otrzymamy wyjątek i proces odwracania zostanie przerwany.
215
215
216
216
217
217
Poprawianie migracji
@@ -270,9 +270,9 @@ Polecenia migracji dostarczane są wraz z czterema opcjami, które mogą być ok
270
270
271
271
* `connectionID`: łańcuch znaków, określający identyfikator komponentu bazy danych aplikacji. Domyślnie 'db'.
272
272
273
-
* `templateFile`: łańcuch znaków, określający ścieżkę do pliku, który posłuży jako szablon kodu używany do generowania klas migracji. Należy go określić przy użyciu aliasu ścieżki (np. `application.migrations.template`). Jeśli nie został podany, wewnętrzny szablon zostanie użyty, W szablonie token `{ClassName}` zostanie zastąpiony aktualną nazwą klasy migrującej.
273
+
* `templateFile`: łańcuch znaków, określający ścieżkę do pliku, który posłuży jako szablon kodu używany do generowania klas migracji. Należy go określić przy użyciu aliasu ścieżki (np. `application.migrations.template`). Jeśli nie został podany, wewnętrzny szablon zostanie użyty. W szablonie token `{ClassName}` zostanie zastąpiony aktualną nazwą klasy migrującej.
274
274
275
-
W celu zdefiniowania tych opcji wykonaj polecenia migracji używając formatu
275
+
W celu zdefiniowania tych opcji wykonaj polecenia migracji używając formatu:
276
276
277
277
~~~
278
278
yiic migrate up --opcja1=wartość1 --opcja2=wartość2 ...
Copy file name to clipboardExpand all lines: docs/guide/pl/test.fixture.txt
+4-4Lines changed: 4 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ Konfiguracja testu
3
3
4
4
Zautomatyzowane testy wykonywanie są wielokrotnie. Aby upewnić się, że proces testowania jest powtarzalny, chcielibyśmy uruchamiać testy w pewnym znanym stanie zwanym *fixture* (konfiguracją testu). Na przykład, aby przetestować funkcjonalność tworzenia postu w aplikacji blogowej, za każdym razem kiedy uruchamiamy testy, tabele zawierające odpowiednie dane o postach (np. tabela postu - `Post`, komentarzy - `Comment`) powinna zostać przywrócona do pewnego stałego stanu. [Dokumentacja PHPUnit](http://www.phpunit.de/manual/current/en/fixtures.html) dobrze opisuje tworzenie ogólnej konfiguracji testu. W tym rozdziale, opiszemy przede wszystkim jak utworzyć konfigurację testu bazodanowego, tak jak w opisanym powyżej przykładzie.
5
5
6
-
Ustawianie konfiguracji testu bazodanowego jest najprawdopodobniej jedną z najbardziej czasochłonnych czynności w testowaniu aplikacji internegowej korzystającej z bazy danych. Yii dostarcza komponent aplikacji [CDbFixtureManager] aby złagodzić ten problem. Wykonuje on następujące czynności podczas uruchamiana zestawów testów:
6
+
Ustawianie konfiguracji testu bazodanowego jest najprawdopodobniej jedną z najbardziej czasochłonnych czynności w testowaniu aplikacji internetowej korzystającej z bazy danych. Yii dostarcza komponent aplikacji [CDbFixtureManager] aby złagodzić ten problem. Wykonuje on następujące czynności podczas uruchamiana zestawów testów:
7
7
8
8
* Przed uruchomieniem wszystkich testów, resetuje wszystkie tabele biorące udział w testach do znanych stanów.
9
9
* Przed uruchomieniem pojedynczej metody testu, resetuje określone tabele biorące udział w teście do znanego stanu.
@@ -22,7 +22,7 @@ return array(
22
22
);
23
23
~~~
24
24
25
-
Następnie dostarczamy dane konfiguracji testu w katalogu `protected/tests/fixtures`. Katalog ten można zmienić poprzez skonfigurowanie właściwości [CDbFixtureManager::basePath] w konfiguracji aplikacji. Dane konfiguracji testu są zorganizowane jako kolekcja plików nazywanych plikami konfiguracji testów (ang. fixture files). Każdy plik konfiguracji testy zwraca tablicę reprezentującą inicjalne dane danych dla poszczególnych tabel. Nazwa pliku jest zgodna z nazwą tabeli. Poniżej znajduje się przykład pliku z danymi dla tabeli `Post` zachowanej w pliku `Post.php`:
25
+
Następnie dostarczamy dane konfiguracji testu w katalogu `protected/tests/fixtures`. Katalog ten można zmienić poprzez skonfigurowanie właściwości [CDbFixtureManager::basePath] w konfiguracji aplikacji. Dane konfiguracji testu są zorganizowane jako kolekcja plików nazywanych plikami konfiguracji testów (ang. fixture files). Każdy plik konfiguracji testu zwraca tablicę reprezentującą inicjalne dane danych dla poszczególnych tabel. Nazwa pliku jest zgodna z nazwą tabeli. Poniżej znajduje się przykład pliku z danymi dla tabeli `Post` zachowanej w pliku `Post.php`:
26
26
27
27
~~~
28
28
[php]
@@ -43,7 +43,7 @@ return array(
43
43
);
44
44
~~~
45
45
46
-
Jak możemy zauwazyc, dwa wiersze danych sa zwracane w powyższym kodzie. Każdu wiersz jest reprezentowany jako asocjacyjna tablica, której klucze są nazwami kolumn i których wartości są odpowiadającymi im wartościami kolumn. Dodatkowo, każdy wiersz jest indeksowany poprzez łańcuch znaków (np. `sample1`, `sample2`) nazywany *aliasem wiersza* (ang. row alias). Później, podczas pisania skryptów testów, możemy wygodnie odwołać się do wiersza przez jego alias. Opiszemy to szczegółowo w następnym rozdziale.
46
+
Jak możemy zauważyć, dwa wiersze danych są zwracane w powyższym kodzie. Każdu wiersz jest reprezentowany jako asocjacyjna tablica, której klucze są nazwami kolumn i których wartości są odpowiadającymi im wartościami kolumn. Dodatkowo, każdy wiersz jest indeksowany poprzez łańcuch znaków (np. `sample1`, `sample2`) nazywany *aliasem wiersza* (ang. row alias). Później, podczas pisania skryptów testów, możemy wygodnie odwołać się do wiersza przez jego alias. Opiszemy to szczegółowo w następnym rozdziale.
47
47
48
48
Z pewnością zauważyłeś, że nie określamy wartości kolumny `id` w powyższej konfiguracji testu. Dzieje się tak, ze względu na to, że kolumna `id` określona jest jako samoprzyrastający (ang. auto-incremental) klucz główny, którego wartość będzie wypełniona, jeśli wstawimy nowy wiersz.
49
49
@@ -53,7 +53,7 @@ Czasami, nie chcemy zresetować każdej tabeli, która posiada konfigurację tes
53
53
54
54
Możliwe też, że nie chcemy domyślnego sposobu resetowania tabeli, np. obcinania i wstawiania do niej danych konfiuracji testu. Jeśli jest tak w naszym przypadku, możemy napisać inicjalizacyjny skrypt, dla określonego pliku konfiguracji testu. Skrypt musi posiadać nazwę zgodną z tabelą zakończoną łańcuchem `.init.php`. Na przykład, inicjalizacyjnym skryptem dla tabeli `Post` będzie `Post.init.php`. Gdy menedżer [CDbFixtureManager] widzi ten skrypt, wykona go zamiast używania domyślnego sposobu resetowania tabeli.
55
55
56
-
> Tip|Wskazówka: Posiadanie wieli plików konfiguracji testu może zwiększyć drastycznie czas testowania. Z tych powodów, powinieneś jedynie tworzyć pliki konfiguracji testu dla tych tabel, których zawartość może ulec zmianie podczas testu. Tabele, które służy wyłącznie do przeglądania, nie zmieniają się i dlatego nie potrzebują pliku konfiguracji testu.
56
+
> Tip|Wskazówka: Posiadanie wieli plików konfiguracji testu może zwiększyć drastycznie czas testowania. Z tych powodów, powinieneś jedynie tworzyć pliki konfiguracji testu dla tych tabel, których zawartość może ulec zmianie podczas testu. Tabele, które służą wyłącznie do przeglądania, nie zmieniają się i dlatego nie potrzebują pliku konfiguracji testu.
57
57
58
58
Następnie dwa rozdziały opiszą jak używać konfiguracji testu zarządzanej przez [CDbFixtureManager] w testach jednostkowych i funkcjonalnych.
0 commit comments