Automatyczne testowanie jadra Linuksa
|
|
- Radosław Kasprzak
- 8 lat temu
- Przeglądów:
Transkrypt
1 wydział Matematyki Informatyki i Mechaniki Uniwersytetu Warszawskiego 23 grudnia 2008
2 Składniki 1 Metodologia tworzenia i przeprowadzania testów idea, założenia przeprowadzanie testów metodologia tworzenia testów 2 Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn 3 4 idea historia funkcjonalności skuteczność Własne testy
3 Definicja Metodologia tworzenia i przeprowadzania testów idea, założenia przeprowadzanie testów metodologia tworzenia testów Testowanie oprogramowania jest wykonaniem kodu dla kombinacji danych wejściowych i stanów w celu wykrycia błędów" Robert V. Binder, Testing Object-Oriented Systems. Models, Patterns, and Tools
4 Do czego potrzebne? idea, założenia przeprowadzanie testów metodologia tworzenia testów 1 tworzenie i rozwój istniejacego oprogramowania, 2 dobór oprogramowania do warunków sprzętowych, 3 konfiguracja oprogramowania - np. dobór bibliotek do wersji jadra systemu. Podsumowujac: Dla poprawnego i efektywnego działania posiadanego sprzętu i oprogramowania.
5 Warto przeprowadzać idea, założenia przeprowadzanie testów metodologia tworzenia testów Dla nowo tworzonych lub stale rozwijanych projektów koszt naprawy błędu rośnie wykładniczo(!) w kolejnych etapach wytwarzania oprogramowania. W wielu projektach testowanie jest realizowane na samym końcu...
6 Rodzaje testów idea, założenia przeprowadzanie testów metodologia tworzenia testów poprawnościowe
7 Rodzaje testów idea, założenia przeprowadzanie testów metodologia tworzenia testów poprawnościowe wydajnościowe
8 Rodzaje testów idea, założenia przeprowadzanie testów metodologia tworzenia testów poprawnościowe wydajnościowe długotrwałego działania
9 Rodzaje testów idea, założenia przeprowadzanie testów metodologia tworzenia testów poprawnościowe wydajnościowe długotrwałego działania obciażenia-przeci ażenia
10 Różne poziomy idea, założenia przeprowadzanie testów metodologia tworzenia testów I Testy jednostkowe 1 popularyzowane przez Extreme Programming, 2 każda jednostka/moduł jest testowana oddzielnie (wg specyfikacji), 3 testy pisane przed napisanie modułu, II Testy integracyjne 1 czy moduły współpracuja ze soba?, 2 dużo trudniej zidentyfikować klasy równoważności, 3 pojawiaja się problemy skali, 4 często wykrywane błędy specyfikacji a nie błędy integracji III Testy systemowe 1 testy funkcjonalności: (a) warunki testowe, (b) skrypty testowe, (c) dane testowe,
11 idea, założenia przeprowadzanie testów metodologia tworzenia testów Testy systemowe - testy pozafunkcjonalne facility testing Czy system zapewnia wszystkie wymagane funkcje? volume testing Czy system radzi sobie z duża ilościa danych? stress testing Czy system radzi sobie z dużym obciażeniem? endurance testing Czy system zachowuje parametry w długim okresie? usability testing Czy system jest łatwy w użyciu? security testing Czy system wytrzymuje ataki? performance testing Jak dobry jest czas reakcji systemu? storage testing Czy pojawiaja się problemy ze składowaniem danych? configuration testing Czy system działa na wszystkich platformach? installability testing Czy da się skutecznie zainstalować system? reliability testing Jak zmienia się niezawodność systemu w czasie? recovery testing Jak skutecznie system podnosi się po awarii? serviceability testing Czy daje się pielęgnować system? documentation testing Czy dokumentacja jest dokładna? Użyteczna? operations testing Czy instrukcje operatorów sa poprawne?
12 Jakie powinny być testy? idea, założenia przeprowadzanie testów metodologia tworzenia testów Powtarzalne np. żeby sprawdzić, czy wszystko jest ok po usunięciu nieprawidłowości Systematyczne pokrywajace cały zakres funkcjonalności, reprezentatywne dla właściwych zadań systemu, losowe testy to za mało Dokumentowane dla tworzenia statystyk i podejmowania daleko idacych decyzji
13 Różne podejścia idea, założenia przeprowadzanie testów metodologia tworzenia testów czytanie kodu, może dać względnie szybkie rezultaty jeśli kodu mało, a czytajacych wielu, ręczne sprawdzenie czy wszystko działa, ważne, szybkie efekty, dotyczy zazwyczaj tylko bardzo znikomej części funkcjonalności, sprawdzenie kompatybilności z szerokim środowiskiem, czasochłonne, nawet jeśli coś jest nie tak, łatwo to przegapić bez znajomości specjalistycznych szczegółów, automatyczne testy, w przypadku Linux: tzw. testy systemu" i testy aplikacji" (funkcjonalności towarzyszace) - najobszerniejsze, potencjalnie najbardziej miarodajne,
14 idea, założenia przeprowadzanie testów metodologia tworzenia testów Testy automatyczne - w stronę ideału 1 powtarzalne, systematyczne, dokumentowane 2 pozwalaja na dokładna analizę, 3 znacznie szybsze od ręcznych" 4 kompleksowo pokrywaja oprogramowanie, nie tylko trudne przypadki",
15 Podstawowe techniki idea, założenia przeprowadzanie testów metodologia tworzenia testów dobry kompilator, obsługa błędów w kodzie, ostrzeżenia, ręczne inicjowanie parametrów, debugowanie.
16 idea, założenia przeprowadzanie testów metodologia tworzenia testów Czarna skrzynka - testy funkcjonalności Generowanie przypadków testowych na podstawie specyfikacji, nieistotny kod programu. zalety: Unikamy przyjmowania tych samych założeń co programista. Dane testowe sa niezależne od implementacji. Wyniki można interpretować bez wnikania w szczegóły implementacyjne. sugestie: Dla każdego komponentu przypadki testowe: czego wymaga", co modyfikuje", na co wpływa". Dobrze jest określić warunki brzegowe, moga się przydać testy niepoprawnych danych wejściowych,
17 idea, założenia przeprowadzanie testów metodologia tworzenia testów Przezroczysta skrzynka - testy strukturalne Pokrycie kodu testami Badanie kodu i testowanie ścieżek w kodzie...ponieważ testowanie czarnej skrzynki nigdy nie gwarantuje, że wykonaliśmy wszystkie fragmenty kodu Kompletność ścieżek: Zestaw testów pokrywa komplet ścieżek jeśli każda ścieżka w kodzie jest wykonana co najmniej raz w zestawie testów. To nie to samo, co stwierdzić, że każda instrukcja kodu jest wykonana!
18 idea, założenia przeprowadzanie testów metodologia tworzenia testów Testowanie może ujawnić obecność błędów, ale nigdy ich brak Edsger Dijkstra
19 Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn Często błędami pojawiajacymi się w czasie pracy obarczamy system, oprócz niego jednak najczęstsza przyczyna błędów sa problemy z pamięcia wolnego dostępu (cache RAM).
20 memtest86 - charakterystyka Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn Memtest86 to rygorystyczny, niskopoziomowy tester pamięci wolnego dostępu, ściśle zwiazany z architektura Intel/AMD x86. Uruchamia się go jak system operacyjny -ładowanie spośród opcji w GRUB ie lub z dysku startowego. Przeprowadza znacznie dokładniejsze (i bardziej czasochłonne) testy pamięci niż BIOS. Sprawdza wszystkie dostępne sektory pamięci RAM - niezależnie od ich przeznaczenia. Można nadzorować działanie programu online.
21 Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn memtest86 - co zrobić gdy już jest bład? Trzeba zorientować się na której kości RAM wystapił bład: 1 usunać kość i sprawdzić - najłatwiej, 2 gdy nie można usuwać kości - rotacja (więcej niż dwie) 3 gdy to nic nie daje - podmienić na inna 4 unikać alokacji - konstrukcja szablonów dla Linuxa (BadRam)
22 memtest86 - czy wiarygodny? Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn Czasami poszukiwanie rozmiaru dostępnej pamięci może powodować problemy, np. z segmentami pamięci zaczynajacymi się powyżej 3GB. Bywa, że pamięć po prostu nie współpracuje z Athlonem. Memtest nie radzi sobie z błędami procesora.
23 memtester - charakterystyka Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn Narzędzie testujace podzespoły pamięci, podobne do memtest86. Alokuje tak wiele stron pamięci RAM jak to możliwe, blokuje fizyczna pamięć i wykonuje na niej testy. Zastosowanie w systemach unixo-podobnych - proces w trybie użytkownika. Łatwa kompilacja i uruchamianie: $ memtester <memory> [runs] <memory> - rozmiar pamięci do testowania w MB runs- liczba powtórzeń testu Pojedynczy proces może w linuxie zaalokować co najwyżej połowę fizycznej pamięci, dobrze wykonywać testy równolegle.
24 memtester - sprawdza się Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn gdy architektura inna niż x86 (np. Mac) gdy chcemy szybko sprawdzić pamięć, bez restartowania komputera
25 Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn Memory Test Script - charakterystyka Bardziej rygorystyczny, testuje pamięć przez kombinację dostępu w trybie DMA i procesora. Bada jak zachowuja się dane w pamięci RAM podczas ich transferu z maksymalna szybkościa (możliwie pełne wykorzystanie przepustowości). Skrypt pozwala ocenić czy wbudowany kontroler pamięci (odpowiedzialny za przepływ danych) funkcjonuje prawidłowo.
26 Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn Memory Test script -zaczyna się ryzyko Be careful with this one, I ve been told it has been known to damage cheap hardware, or could even make your computer so hot it catches on fire."
27 Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn Memory Test Script -test wytrzymałości? Test Douga Ledforda pozwala też diagnozować problemy zwiazane ze źródłem mocy, jeżeli dodatkowo uruchomione np.: operacje na dyskach twardych, aplikacje używajace karty graficznej, napęd CD (np. nagrywanie), aktywne łacze internetowe, etc. Wszelkie anomalie w tym stanie jak: spadek szybkości pracy HD, całkowite zablokowanie czynności komputera, błędy w nagrywaniu i inne wynikaja z niepoprawnego działania jednostki mocy.
28 Memory Test Script Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn
29 Cerberus charakterystyka Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn IT IS NOT RECOMMENDED TO RUN THIS SOFTWARE ON A MACHINE USED FOR PRODUCTIVE PURPOSES, OR ON HARDWARE YOU DO NOT WANT TO DESTROY." Rozpowszechniony pod licencja GNU GPL system do tworzenia i przeprowadzania programistycznych testów wydajności wszystkich sprzętowych komponentów komputera. Używany m.in. do tzw. wypalania serwerów".
30 Cerberus - szeroki zakres testów Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn Procesor wielokrotna kompilacja jadra systemu, skomplikowane operacje matematyczne - określanie czy liczba jest pierwsza.., inne operacje rozpalajace" procesor Dyski twarde wielokrotne zapisywanie, usuwanie, przenoszenie dużych ilości danych na dysku, wielokrotne testy poprawności przetwarzanych danych,
31 Cerberus - skuteczny Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn Dopiero z jego pomoca można wykrywać pewne krytyczne błędy w systemach plików - wykazały patologiczne" testy wykonywane dla jadra Linuxa.
32 Cerberus - zagrożenia Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn Nie robi niczego niezwykłego. Podczas tworzenia uruchamiany wielokrotnie, bez efektów ubocznych. Powinien przejść bezbłędnie o ile system prawidłowo skonfigurowany i stabilny, a sprzęt dobrej jakości. Jeśli system był niestabilny, a sprzęt za słaby lub miał ukryte defekty: a) utrata danych na dyskach, b) uszkodzenie oprogramowania, c) ujawnienie, pogłębienie defektów sprzętowych, d) poważne uszkodzenia sprzętu, e) całkowita dewastacja taniej" elektroniki, f) (innej niż dostarczana przez VA Linux Systems)
33 Cerberus - optymistycznie Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn If after a week the server is still running (not smoking) and hasn t crashed, it is considered good enough for use as a production machine. Web servers that have survived this process will certainly survive anything you can through at them."
34 cpuburn-charakterystyka Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn Jest to ekstremalnie rygorystyczny, niskopoziomowy program przeznaczony do testowania zachowania procesora przy maksymalnym obciażeniu. Działa optymalnie na sprzęcie: Intel Pentium Pro/II/III, Celeron TM Itel P5 AMD K7 (Athlon/Duron/Thunderbird TM) NMD K6
35 cpuburn-idea Metodologia tworzenia i przeprowadzania testów Memtest86 Charles Cazabon s memtester Doug Ledford s Memory Test Script Cerberus Test Control System cpuburn Napisany tak by załadować maksymalnie dużo instrukcji do procesora. Nie sprawdza wykonania każdej instrukcji. Celem jest zmuszenie procesora do emisji maksymalnej ilości ciepła. Co za tym idzie testowane jednocześnie chłodzenie i pobór mocy
36 Bootchart - charakterystyka Narzędzie do wizualizacji i analizy procesu uruchamiania systemu Linux. Gromadzi wiele informacji na temat stanu komputera i systemu operacyjnego podczas fazy rozruchu i bezpośrednio po niej: 1 dane o inicjowanych procesach, 2 statystyki aktywności procesora 3 statystyki użycia dysków Zebrane przez skrypt inforamcje sa zapisywane na dysku (log) i przetwarzane z użyciem aplikacji (Java) dla prezentacji w formie przystępnego wykresu (png/svg/eps).
37 Bootchart - dla optymalizacji Projekt rozwinał się jako odpowiedź na postulaty Owena Taylora: Czas rozruchu systemu to około 2 minuty. Wymaga aktywności procesora, dysku twardego i czasu uaktywnienia zewnętrznych urzadzeń (monitor, połaczenie z siecia etc). Idealny system powinien wczytać około 100 MB danych (3-4 sek), głównie do tego angażujac procesor. Żadania do zewnętrznych urzadzeń powinny być asynchroniczne. W idealnym systemie użytkownik mógłby rozpoczać pracę po około 10 sek. od uruchomienia. Dobrze byłoby wiedzieć czym nasz system różni się od takiego idealnego.
38 Bootchart - wykres Majac wiedzę można eksperymentować - np z readahead
39 Bootchart - uruchamianie z metoda readahead z readahead bez
40 idea historia funkcjonalności skuteczność Własne testy Linux - rozwój, wiele architektur, ekspansja kodu
41 idea historia funkcjonalności skuteczność Własne testy Linux - rozwój, wiele architektur, ekspansja kodu Cel - stabilność, wydajność, robustness
42 idea historia funkcjonalności skuteczność Własne testy Linux - rozwój, wiele architektur, ekspansja kodu Cel - stabilność, wydajność, robustness Ktoś nad tym czuwa?: (LTP)
43 Przestroga Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy Nie należy ignorować etapu testowania gdyż: Liczne błędy
44 Przestroga Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy Nie należy ignorować etapu testowania gdyż: Liczne błędy Konieczność częstych update ów, bug-fiksów
45 Przestroga Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy Nie należy ignorować etapu testowania gdyż: Liczne błędy Konieczność częstych update ów, bug-fiksów W efekcie zniechęcanie użytkowników
46 Poczatki Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy 1 Zapoczatkowane przez SGI rok 2 Założenia: udostępnić zestaw testów do walidacji stabilności wydajności i robustness jadra Linuksa 3 Udostępnienie narzędzi do automatyzacji przeprowadzania i tworzenia testów 4 Kernel testów
47 Obecnie Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy 1 Kernel ponad 3000 testów 2 Testowanie różnych funkcjonalności jadra: syscall, filesystem, ipc, timers, scheduler, modules % kodu w C, reszta w Shellu i Perlu 4 Jedno z najważniejszych narzędzi stosowanych przez deweloperów, testerów i ludzi majacych wpływ na rozwój Linuksa 5 poczawszy od 2007 roku dynamiczny rozwój, rewizja dotychczasowych testów
48 Wynik w postaci HTML idea historia funkcjonalności skuteczność Własne testy
49 Dodatkowo... idea historia funkcjonalności skuteczność Własne testy Współbieżne wykonywanie testów z kontrola outputu
50 Dodatkowo... idea historia funkcjonalności skuteczność Własne testy Współbieżne wykonywanie testów z kontrola outputu Zapuszczanie testów na określony czas lub/i określona liczbę razy
51 Dodatkowo... idea historia funkcjonalności skuteczność Własne testy Współbieżne wykonywanie testów z kontrola outputu Zapuszczanie testów na określony czas lub/i określona liczbę razy Wysyłanie wyników poczta elektroniczna
52 Dodatkowo... idea historia funkcjonalności skuteczność Własne testy Współbieżne wykonywanie testów z kontrola outputu Zapuszczanie testów na określony czas lub/i określona liczbę razy Wysyłanie wyników poczta elektroniczna Generowanie obciażenia w trakcie testów, ograniczeń co do zużycia zasobów
53 Pokrycie kodu jadra idea historia funkcjonalności skuteczność Własne testy
54 Własne testy Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy Schemat pliku z testem (napisanego w C) Nagłówki, własne makra
55 Własne testy Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy Schemat pliku z testem (napisanego w C) Nagłówki, własne makra main(), sprawdzenie czy test może zostać przeprowadzony
56 Własne testy Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy Schemat pliku z testem (napisanego w C) Nagłówki, własne makra main(), sprawdzenie czy test może zostać przeprowadzony setup() - alokowanie zasobów
57 Własne testy Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy Schemat pliku z testem (napisanego w C) Nagłówki, własne makra main(), sprawdzenie czy test może zostać przeprowadzony setup() - alokowanie zasobów wykonanie testu w pętli (ewentualne błędy)
58 Własne testy Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy Schemat pliku z testem (napisanego w C) Nagłówki, własne makra main(), sprawdzenie czy test może zostać przeprowadzony setup() - alokowanie zasobów wykonanie testu w pętli (ewentualne błędy) zaraportowanie wyniku - PASS/FAIL
59 Własne testy Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy Schemat pliku z testem (napisanego w C) Nagłówki, własne makra main(), sprawdzenie czy test może zostać przeprowadzony setup() - alokowanie zasobów wykonanie testu w pętli (ewentualne błędy) zaraportowanie wyniku - PASS/FAIL wypisanie danych do plików log/output
60 Własne testy Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy Schemat pliku z testem (napisanego w C) Nagłówki, własne makra main(), sprawdzenie czy test może zostać przeprowadzony setup() - alokowanie zasobów wykonanie testu w pętli (ewentualne błędy) zaraportowanie wyniku - PASS/FAIL wypisanie danych do plików log/output cleanup() - zwolnienie zasobów
61 Własne testy Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy Schemat pliku z testem (napisanego w C) Nagłówki, własne makra main(), sprawdzenie czy test może zostać przeprowadzony setup() - alokowanie zasobów wykonanie testu w pętli (ewentualne błędy) zaraportowanie wyniku - PASS/FAIL wypisanie danych do plików log/output cleanup() - zwolnienie zasobów exit() - kod powrotu - PASS/FAIL
62 Runltp Metodologia tworzenia i przeprowadzania testów idea historia funkcjonalności skuteczność Własne testy
63 co to jest? Metodologia tworzenia i przeprowadzania testów Miary GCOV GCOV-Kernel LCOV Jest to proces znajdowania tych miejsc w kodzie, które nie były wykonane podczas przeprowadzania testów.
64 co to jest? Metodologia tworzenia i przeprowadzania testów Miary GCOV GCOV-Kernel LCOV Jest to proces znajdowania tych miejsc w kodzie, które nie były wykonane podczas przeprowadzania testów. tworzenia nowych testów, które te miejsca odwiedza.
65 co to jest? Metodologia tworzenia i przeprowadzania testów Miary GCOV GCOV-Kernel LCOV Jest to proces znajdowania tych miejsc w kodzie, które nie były wykonane podczas przeprowadzania testów. tworzenia nowych testów, które te miejsca odwiedza. określania odpowiedniej miary pokrycia, która w sposób pośredni jest miara jakości.
66 co to jest? Metodologia tworzenia i przeprowadzania testów Miary GCOV GCOV-Kernel LCOV Jest to proces znajdowania tych miejsc w kodzie, które nie były wykonane podczas przeprowadzania testów. tworzenia nowych testów, które te miejsca odwiedza. określania odpowiedniej miary pokrycia, która w sposób pośredni jest miara jakości. znajdowanie redundantnych testów, które nie zwiększaja pokrycia kodu.
67 do czego to służy? Miary GCOV GCOV-Kernel LCOV Zapewnia jakość testów oprogramowania.
68 do czego to służy? Miary GCOV GCOV-Kernel LCOV Zapewnia jakość testów oprogramowania. Metanarzędzie - testowanie testów.
69 do czego to służy? Miary GCOV GCOV-Kernel LCOV Zapewnia jakość testów oprogramowania. Metanarzędzie - testowanie testów. Pośrednio zapewnia jakość samego oprogramowania.
70 co zakłada? Metodologia tworzenia i przeprowadzania testów Miary GCOV GCOV-Kernel LCOV Błędy dotycza przepływu sterowania i poprzez zmianę tego przepływu możemy je odnaleźć. Np. ktoś napisał if (c), zamiast if (!c).
71 co zakłada? Metodologia tworzenia i przeprowadzania testów Miary GCOV GCOV-Kernel LCOV Błędy dotycza przepływu sterowania i poprzez zmianę tego przepływu możemy je odnaleźć. Np. ktoś napisał if (c), zamiast if (!c). Nie ma niedostępnych fragmentów kodu.
72 pokrycie instrukcji Miary GCOV GCOV-Kernel LCOV Jeśli piszemy intrukcje w osobnych liniach to to samo co: pokrycie linii pokrycie segmentu Nie wymaga przetwarzania kodu źródłowego. Ma swoje wady: int* p = NULL; if (condition) p = &variable; *p = 123;
73 pokrycie decyzji Miary GCOV GCOV-Kernel LCOV Pokazuje czy wyrażenia logiczne w strukturach takich, jak if, while wyliczyły się zarówno do true i false Udostępnia pokrycie przypadków struktury switch oraz exception handlerów. Inne nazwy to: pokrycie gałęzi pokrycie wszysktich krawędzi Ma swoje wady: if (condition1 && (condition2 function1())) statement1; else statement2;
74 pokrycie warunków Miary GCOV GCOV-Kernel LCOV Sprawdza pokrycie wszystkich podwarunków w instrukcjach warunkowych. Bardziej wrażliwa na przepływ sterowania. Inne nazwy to: pokrycie gałęzi pokrycie wszysktich krawędzi Pełne pokrycie warunków nie implikuje pełnego pokrycia decyzji. Ma swoje wady: bool f(bool e) return false; bool a[2] = false, false ; if (f(a && b))... if (a[int(a && b)])... if ((a && b)? false : false)...
75 Miary GCOV GCOV-Kernel LCOV wielokrotne pokrycie warunków Sprawdza pokrycie wszystkich kombinacji podwarunków logiczych (z dokładnościa do leniwości). Nie obejmuje pokrycia decyzji. a && b && (c (d && e)) a b c d e 1. F 2. T F 3. T T F F 4. T T F T F 5. T T F T T 6. T T T
76 pokrycie ścieżek Miary GCOV GCOV-Kernel LCOV Sprawdza czy każda możliwa ścieżka została wykonana. Trudności z oszacowaniem prawdziwej liczby ścieżek. if (success) statement1; statement2; if (success) statement3; Pętle - nieskończona liczba ścieżek.
77 inne Metodologia tworzenia i przeprowadzania testów Miary GCOV GCOV-Kernel LCOV pokrycie funkji pokrycie wywołań pokrycie tablic race coverage
78 co to jest GCOV? Miary GCOV GCOV-Kernel LCOV Narzędzie w ramach projektu LTP. Współpracuje tylko z kompilatorem gcc. Pokrycie linii + procentowe pokrycie gałęzi.
79 jak on działa? Miary GCOV GCOV-Kernel LCOV GCOV działa w czterech fazach: instrumentacja kodu
80 jak on działa? Miary GCOV GCOV-Kernel LCOV GCOV działa w czterech fazach: instrumentacja kodu zbieranie danych w czasie wykonywania kodu
81 jak on działa? Miary GCOV GCOV-Kernel LCOV GCOV działa w czterech fazach: instrumentacja kodu zbieranie danych w czasie wykonywania kodu ekstrakcja danych w czasie zakończenia wykonywania programu (a co gdy monitorujemy system?)
82 jak on działa? Miary GCOV GCOV-Kernel LCOV GCOV działa w czterech fazach: instrumentacja kodu zbieranie danych w czasie wykonywania kodu ekstrakcja danych w czasie zakończenia wykonywania programu (a co gdy monitorujemy system?) analiza pokrycia kodu i prezentacja post-mortem
83 co to jest instrumentacja? Miary GCOV GCOV-Kernel LCOV Kompilujemy program z opcja fprofile args ftest coverage Do kodu dodawane sa instrukcje, które zliczaja pokrycie kodu: dla każdej funkcji tworzony jest graf przepływu sterowania, minimalizowana jest liczba krawędzi grafu, które musza zostać zinstrumentalizowane (dopełnienie drzewa rozpinajacego), cała informacja jest odtwarzana z tych krawędzi, każdy zinstrumantelizowany blok podstawowy programu dostaje swój numer ID, kompilator alokuje dla każdej funkcji tablicę zliczajac a oraz dodaje do każdego takiego bloku instrukcje zwiększajace liczniki tworzony sa odpowiednie pliki.o
84 co to jest instrumentacja? Miary GCOV GCOV-Kernel LCOV
85 a co w przypadku jadra? Miary GCOV GCOV-Kernel LCOV Podstawowy problem: jadro nie kończy swojego działania. Rozwiazanie - moduł, podsystem w stystemie proc + patch na jadro.
86 Inne problemy Miary GCOV GCOV-Kernel LCOV Zasada nieoznaczoności Heisenberga! Pomiar zmienia mierzona wielkość. Kod jadra jest średnio pokryty w 14% przez działalność gcova. Pomiar nie jest atomowy w czasie - zebranie statystyk z całego jadra trwa długo. Problem z architekturami wieloprocesorowymi.
87 co to jest? Metodologia tworzenia i przeprowadzania testów Miary GCOV GCOV-Kernel LCOV Nakładka na gcov umożliwiajaca generowanie czytelnych dla ludzi plików html.
88 Bibligrafia t ests.php
Maciej Oleksy Zenon Matuszyk
Maciej Oleksy Zenon Matuszyk Jest to proces związany z wytwarzaniem oprogramowania. Jest on jednym z procesów kontroli jakości oprogramowania. Weryfikacja oprogramowania - testowanie zgodności systemu
Automatyczne testowanie jądra Linuksa
Automatyczne testowanie jądra Linuksa Krzysztof Skrzypczyński Marcin Mieteń Automatyzacja testów W kontekście testowania jądra linuxa tworzy się skrypty i programy sprawdzające działanie odpowiednich części
Testowanie oprogramowania. Testowanie oprogramowania 1/34
Testowanie oprogramowania Testowanie oprogramowania 1/34 Testowanie oprogramowania 2/34 Cele testowania testowanie polega na uruchamianiu oprogramowania w celu wykrycia błędów, dobry test to taki, który
IO - Plan testów. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006
IO - Plan testów M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak 5 czerwca 2006 1 SPIS TREŚCI 2 Spis treści 1 Historia zmian 3 2 Zakres testów 3 2.1 Integration testing - Testy spójnosci.............. 3 2.2
Porównanie metod i technik testowania oprogramowania. Damian Ryś Maja Wojnarowska
Porównanie metod i technik testowania oprogramowania Damian Ryś Maja Wojnarowska Testy oprogramowania Testowanie oprogramowania jest to proces związany z wytwarzaniem oprogramowania. Jest on jednym z procesów
GNU GProf i GCov. przygotował: Krzysztof Jurczuk Politechnika Białostocka Wydział Informatyki Katedra Oprogramowania ul. Wiejska 45A Białystok
GNU GProf i GCov przygotował: Krzysztof Jurczuk Politechnika Białostocka Wydział Informatyki Katedra Oprogramowania ul. Wiejska 45A 15-351 Białystok Streszczenie: Dokument zawiera podstawowe informacje
Piotr Dwieczkowski. Code coverage. Mierzenie pokrycia kodu, teoria oraz praktyka w C/C++
Piotr Dwieczkowski Code coverage Mierzenie pokrycia kodu, teoria oraz praktyka w C/C++ Plan Co to jest pokrycie kodu? Możliwe sposoby wykorzystania Rodzaje statystyk Wady i zalety mierzenia porycia kodu
Testowanie oprogramowania. Piotr Ciskowski
Testowanie oprogramowania Piotr Ciskowski TESTOWANIE testowanie o proces eksperymentalnego badania programu lub jego komponentu o próbne wykonanie w znanych warunkach o rejestrowanie wyników o ocena właściwości
Metody optymalizacji soft-procesorów NIOS
POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych Instytut Telekomunikacji Zakład Podstaw Telekomunikacji Kamil Krawczyk Metody optymalizacji soft-procesorów NIOS Warszawa, 27.01.2011
Plan testów. Robert Dyczkowski, Piotr Findeisen, Filip Grzdkowski. 4 czerwca 2006
Robert Dyczkowski, Piotr Findeisen, Filip Grzdkowski 4 czerwca 2006 1 Spis treści 1 Wprowadzenie 3 1.1 Cel dokumentu................................... 3 1.2 Oczekiwania....................................
Laboratorium Informatyka (I) AiR Ćwiczenia z debugowania
Laboratorium Informatyka (I) AiR Ćwiczenia z debugowania Krzysztof Kluza, Janusz Miller 1 Debugowanie Debugowanie, czy też po polsku odpluskiwanie, to proces polegający na kontrolowanym wykonaniu programu
Testowanie oprogramowania
Testowanie oprogramowania 1/17 Testowanie oprogramowania Wykład 01 dr inż. Grzegorz Michalski 13 października 2015 Testowanie oprogramowania 2/17 Dane kontaktowe: Kontakt dr inż. Grzegorz Michalski pokój
Szkolenie: Testowanie wydajności (Performance Testing)
Szkolenie: Testowanie wydajności (Performance Testing) Testy niefunkcjonalne aplikacji to nieodłączna część pracy dobrego testera. Do tego typu testów zaliczamy między innymi taką właściwość systemu jak
Tworzenie przypadków testowych
Tworzenie przypadków testowych Prowadząca: Katarzyna Pietrzyk Agenda 1. Wprowadzenie 2. Wymagania 3. Przypadek testowy Definicja Schemat Cechy dobrego przypadku testowego 4. Techniki projektowania Czarnej
INŻYNIERIA OPROGRAMOWANIA TESTOWANIE SYSTEMOWE
INŻYNIERIA OPROGRAMOWANIA TESTOWANIE SYSTEMOWE Ważne pojęcia (I) Warunek testowy (test condition) to element lub zdarzenie modułu lub systemu, który może być zweryfikowany przez jeden lub więcej przypadków
Q E M U. http://www.qemu.com/
http://www.qemu.com/ Emulator procesora Autor: Fabrice Bellard Obsługiwane platformy: Windows, Solaris, Linux, FreeBSD, Mac OS X Aktualna wersja: 0.9.0 Większość programu oparta na licencji LGPL, a sama
Programowanie niskopoziomowe. dr inż. Paweł Pełczyński ppelczynski@swspiz.pl
Programowanie niskopoziomowe dr inż. Paweł Pełczyński ppelczynski@swspiz.pl 1 Literatura Randall Hyde: Asembler. Sztuka programowania, Helion, 2004. Eugeniusz Wróbel: Praktyczny kurs asemblera, Helion,
Podstawy Techniki Komputerowej. Temat: BIOS
Podstawy Techniki Komputerowej Temat: BIOS BIOS ( Basic Input/Output System podstawowy system wejścia-wyjścia) zapisany w pamięci stałej zestaw podstawowych procedur pośredniczących pomiędzy systemem operacyjnym
Optymalizacja programów Open Source. Profilery wysokiego poziomu część 2. Krzysztof Lichota
Optymalizacja programów Open Source Profilery wysokiego poziomu część 2 Krzysztof Lichota lichota@mimuw.edu.pl gprof gprof Pomiar działa na zasadzie instrumentacji kompilowanego kodu (wejścia i wyjścia
Win Admin Replikator Instrukcja Obsługi
Win Admin Replikator Instrukcja Obsługi Monitoring Kopie danych (backup) E-mail Harmonogram lokalne i zewnętrzne repozytorium Logi Pamięć Procesor HDD Administracja sprzętem i oprogramowaniem (automatyzacja
Automatyzacja testowania oprogramowania. Automatyzacja testowania oprogramowania 1/36
Automatyzacja testowania oprogramowania Automatyzacja testowania oprogramowania 1/36 Automatyzacja testowania oprogramowania 2/36 Potrzeba szybkich rozwiązań Testowanie oprogramowania powinno być: efektywne
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 2. Przygotowanie środowiska pracy
Strojenie systemu Linux pod k¹tem serwera bazy danych Oracle 9i
VI Seminarium PLOUG Warszawa Styczeñ 2003 Strojenie systemu Linux pod k¹tem serwera bazy danych Oracle 9i Marcin Przepiórowski Strojenie systemu Linux pod kątem serwera bazy danych Oracle 9i 7 1. Wstęp
Sposoby wykrywania i usuwania błędów. Tomasz Borzyszkowski
Sposoby wykrywania i usuwania błędów Tomasz Borzyszkowski Mylić się jest rzeczą ludzką Typy błędów: błędy specyfikacji: źle określone wymagania błędy projektowe: nieodpowiednie struktury danych i algorytmy
Wykład 8. Testowanie w JEE 5.0 (1) Autor: Zofia Kruczkiewicz. Zofia Kruczkiewicz
Wykład 8 Testowanie w JEE 5.0 (1) Autor: 1. Rola testowania w tworzeniu oprogramowania Kluczową rolę w powstawaniu oprogramowania stanowi proces usuwania błędów w kolejnych fazach rozwoju oprogramowania
FastReporter 2 OPROGRAMOWANIE DO KOŃCOWEGO PRZETWARZANIA DANYCH
OPROGRAMOWANIE DO KOŃCOWEGO PRZETWARZANIA DANYCH Narzędzie do skonsolidowanego zarządzania oraz końcowego przetwarzania danych, zaprojektowane po to, aby zwiększyć wydajność raportowania inspekcji zakończeń
Jarosław Kuchta Dokumentacja i Jakość Oprogramowania. Wymagania jakości w Agile Programming
Jarosław Kuchta Wymagania jakości w Agile Programming Wady klasycznych metod zapewnienia jakości Duży narzut na dokumentowanie Późne uzyskiwanie konkretnych rezultatów Trudność w odpowiednio wczesnym definiowaniu
Systemy operacyjne oparte na mikrojądrze na przykładzie Minix3. Maciej Łaszcz, Wojciech Łowiec, Patryk Spanily 2 XII 2008
Systemy operacyjne oparte na mikrojądrze na przykładzie Minix3. Maciej Łaszcz, Wojciech Łowiec, Patryk Spanily 2 XII 2008 Systemy oparte na mikrojądrze Jądro systemu jest bardzo małe Architektura mocno
Win Admin Replikator Instrukcja Obsługi
Win Admin Replikator Instrukcja Obsługi Monitoring Kopie danych (backup) E-mail Harmonogram lokalne i zewnętrzne repozytorium Logi Pamięć Procesor HDD Administracja sprzętem i oprogramowaniem (automatyzacja
Sposób funkcjonowania
Stratus Avance został zaprojektowany w sposób, który w przypadku wystąpienia awarii ma zminimalizować czas przestoju i zapobiec utracie danych. Jednocześnie rozwiązanie ma być tanie i łatwe w zarządzaniu.
Monitorowanie wydajność w bazie Oracle11g
Monitorowanie wydajność w bazie Oracle11g Wstęp Monitorowanie wydajności bazy danych, a także aplikowanie aktualizacji to jedne z ważniejszych zadań administratora bazy danych. Wpływ na wydajność może
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma
Testowanie II. Celem zajęć jest zapoznanie studentów z oceną jakości testów przy wykorzystaniu metryk pokrycia kodu testami (ang. code coverage).
Testowanie II Cel zajęć Celem zajęć jest zapoznanie studentów z oceną jakości testów przy wykorzystaniu metryk pokrycia kodu testami (ang. code coverage). Pokrycie kodu testami Jak już była mowa na poprzednich
Rubik s Manager - Plan testów
Rubik s Manager - Plan testów Sebastian Chojniak, Łukasz Krupa, Grzegorz Łuczyna 27 maja 2007 1 Spis treści 1 Wprowadzenie 3 1.1 Cel.......................................... 3 1.2 Zakres........................................
Wprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego
Etapy Ŝycia systemu informacyjnego Wprowadzenie do metodologii modelowania systemów informacyjnych 1. Strategia 2. Analiza 3. Projektowanie 4. Implementowanie, testowanie i dokumentowanie 5. WdroŜenie
Techniki (automatyzacji) projektowania testów. Adam Roman WarszawQA, 24 II 2016
Techniki (automatyzacji) projektowania testów Adam Roman WarszawQA, 24 II 2016 Prelegent Quality Assurance R&D Lead, Rivet Group Adiunkt w Instytucie Informatyki i Matematyki Komputerowej UJ Członek Stowarzyszenia
Dlaczego testowanie jest ważne?
Testowanie Dlaczego testowanie jest ważne? Oprogramowanie które nie działa poprawnie może doprowadzić do: straty czasu, pieniędzy utraty reputacji uszkodzeń ciała a nawet śmierci Definicja błędu Oprogramowanie
Systemy operacyjne i sieci komputerowe. 1 SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE. Etapy uruchamiania systemu
Systemy operacyjne i sieci komputerowe. 1 SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE Etapy uruchamiania systemu 010 2 Systemy operacyjne i sieci komputerowe. Część 010. I. Etapy uruchamiania systemu Windows
<Nazwa firmy> <Nazwa projektu> Specyfikacja dodatkowa. Wersja <1.0>
Wersja [Uwaga: Niniejszy wzór dostarczony jest w celu użytkowania z Unified Process for EDUcation. Tekst zawarty w nawiasach kwadratowych i napisany błękitną kursywą
Struktury systemów operacyjnych
Struktury systemów operacyjnych Jan Tuziemski Część slajdów to zmodyfiowane slajdy ze strony os-booi.com copyright Silberschatz, Galvin and Gagne, 2013 Cele wykładu 1. Opis usług dostarczanych przez OS
Fuzzing OWASP 14.01.2010. The OWASP Foundation http://www.owasp.org. Piotr Łaskawiec J2EE Developer/Pentester
Fuzzing Piotr Łaskawiec J2EE Developer/Pentester 14.01.2010 Metrosoft (www.metrosoft.com) piotr.laskawiec@gmail.com Copyright The Foundation Permission is granted to copy, distribute and/or modify this
Weryfikacja i walidacja. Metody testowania systemów informatycznych
Weryfikacja i walidacja Metody testowania systemów informatycznych Zagadnienia Weryfikacja a walidacja Etapy procesu testowania Rola planowania w procesie testowania systemów Przegląd różnych strategii
U M L. System operacyjny Linux zagnieżdżony w zewnętrznym systemie operacyjnym (Linux)
http://user-mode-linux.sourceforge.net/ System operacyjny Linux zagnieżdżony w zewnętrznym systemie operacyjnym (Linux) Autor: Jeff Dike Koncepcja powstała w 1999 r. Początkowo jako patch do jądra 2.0
Prezentacja systemu RTLinux
Prezentacja systemu RTLinux Podstawowe założenia RTLinux jest system o twardych ograniczeniach czasowych (hard real-time). Inspiracją dla twórców RTLinux a była architektura systemu MERT. W zamierzeniach
Projektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik
Projektowanie oprogramowania Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik Agenda Weryfikacja i zatwierdzanie Testowanie oprogramowania Zarządzanie Zarządzanie personelem
Testowanie według modelu (MBT) Stowarzyszenie Inżynierii Wymagań wymagania.org.pl
Testowanie według modelu (MBT) Bogdan Bereza, Victo MBT testowanie z modelu wersja 2.1 A 1 (48) Pozdrawiam Best regards Med vänliga hälsningar Bogdan Bereza bogdan.bereza@victo.eu +48 519 152 106 Skype:
Automatyczne generowanie testów z modeli. Bogdan Bereza Automatyczne generowanie testów z modeli
Automatyczne generowanie testów z modeli Numer: 1 (33) Rozkmina: Projektowanie testów na podstawie modeli (potem można je wykonywać ręcznie, lub automatycznie zwykle chce się automatycznie) A ja mówię
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),
PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ), Program 351203 Opracowanie: Grzegorz Majda Tematyka zajęć 1. Wprowadzenie do aplikacji internetowych
Galileo - encyklopedia internetowa Plan testów
Galileo - encyklopedia internetowa Plan testów Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Matek Sobierajski 5 czerwca 2006 1 Spis treści 1 Wprowadzenie 3 1.1 Cel..........................................
Praktyka testowania dla początkujących testerów
Praktyka testowania dla początkujących testerów Warsztaty stanowią 100% praktykę testowania i skupiają się zwłaszcza na tych aspektach, które przydatne są w codziennej pracy testera. Przeznaczone są dla
Mariusz Rudnicki PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO CZ.1
Mariusz Rudnicki mariusz.rudnicki@eti.pg.gda.pl PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO CZ.1 Przedmiot PSCR Przedmiot PSCR Wykład do połowy semestru Laboratorium od połowy semestru Projekt Zaliczenie
Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Testowanie. Ryszard Beczek & Piotr Miłkowski 1 04/11/07
Testowanie Ryszard Beczek & Piotr Miłkowski 1 O czym to będzie? Trzy słowa o testowaniu TDD JUnit TestNG JMeter Yawet Squish/Java 2 Jak testujemy? Zwykle aplikacje testujemy ręcznie Testy przeprowadzamy
Testowanie i diagnostyka komputerów
Testowanie i diagnostyka komputerów Bez względu na rodzaj usterki najważniejszym czynnikiem mającym wpływ na sprawne rozwiązanie problemów z komputerem jest prawidłowa diagnostyka podzespołów. Diagnoza
Programowanie współbieżne Wykład 2. Iwona Kochańska
Programowanie współbieżne Wykład 2 Iwona Kochańska Miary skalowalności algorytmu równoległego Przyspieszenie Stały rozmiar danych N T(1) - czas obliczeń dla najlepszego algorytmu sekwencyjnego T(p) - czas
Monitorowanie i zarządzanie urządzeniami sieciowymi przy pomocy narzędzi Net-SNMP
Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Szymon Klimuk Nr albumu: 187408 Praca magisterska na kierunku Informatyka Monitorowanie
Analiza i programowanie obiektowe 2016/2017. Wykład 6: Projektowanie obiektowe: diagramy interakcji
Analiza i programowanie obiektowe 2016/2017 Wykład 6: Projektowanie obiektowe: diagramy interakcji Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Przejście
Struktura systemu operacyjnego. Opracował: mgr Marek Kwiatkowski
Struktura systemu operacyjnego Schemat budowy systemu operacyjnego model warstwowy Schemat budowy systemu operacyjnego części składowe Większość systemów operacyjnych opiera się o koncepcję jądra, która
POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych. Instytut Telekomunikacji Zakład Podstaw Telekomunikacji
POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych Instytut Telekomunikacji Zakład Podstaw Telekomunikacji Kamil Krawczyk Metody optymalizacji soft-procesorów NIOS Opiekun naukowy: dr
Wykład VII. Programowanie III - semestr III Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej
Wykład VII - semestr III Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Wytwarzanie oprogramowania Model tworzenia oprogramowania
Sposoby zwiększania efektywności systemu Windows
Grzegorz Trześniewski kl 1Tia 26.05.08r. Sposoby zwiększania efektywności systemu Windows Prof. Artur Rudnicki Uruchamiianiie ii zamykaniie Należy monitorować oprogramowanie ładowane podczas uruchamiania
Szczegółowy opis przedmiotu umowy. 1. Środowisko SharePoint UWMD (wewnętrzne) składa się z następujących grup serwerów:
Rozdział I Szczegółowy opis przedmiotu umowy Załącznik nr 1 do Umowy Architektura środowisk SharePoint UMWD 1. Środowisko SharePoint UWMD (wewnętrzne) składa się z następujących grup serwerów: a) Środowisko
Microsoft Test Manager
Microsoft Test Manager Wprowadzenie do narzędzia jakim jest Microsoft Test Manager. Wskazanie możliwości, silnych oraz słabych stron. Marta Firlej 29/09/2014 Microsoft Test Manager Team Foundation Server
NETWORK Monitorowanie serwerów, urządzeń i aplikacji INVENTORY Inwentaryzacja sprzętu i oprogramowania, audyty legalności USERS Monitorowanie
www.axence.pl NETWORK Monitorowanie serwerów, urządzeń i aplikacji INVENTORY Inwentaryzacja sprzętu i oprogramowania, audyty legalności USERS Monitorowanie pracowników HELPDESK Zdalny dostęp, zgłoszenia
Język C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop
Język C : programowanie dla początkujących : przewodnik dla adeptów programowania / Greg Perry, Dean Miller. Gliwice, cop. 2016 Spis treści Wprowadzenie 11 Adresaci książki 12 Co wyróżnia tę książkę na
Testowanie i walidacja oprogramowania
Testowanie i walidacja oprogramowania Inżynieria oprogramowania, sem.5 cz. 5 Rok akademicki 2010/2011 Dr inż. Wojciech Koziński Przykład Obliczmy sumę: 0+1+2+...+i, i є [0,100] read(i); if((i < 0)(i >
Wprowadzenie do programowania współbieżnego
Wprowadzenie do programowania współbieżnego Marcin Engel Instytut Informatyki Uniwersytet Warszawski Zamiast wstępu... Zamiast wstępu... Możliwość wykonywania wielu akcji jednocześnie może ułatwić tworzenie
Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.
Języki C i C++ to bardzo uniwersalne platformy programistyczne o ogromnych możliwościach. Wykorzystywane są do tworzenia systemów operacyjnych i oprogramowania użytkowego. Dzięki niskiemu poziomowi abstrakcji
Plan testów do Internetowego Serwisu Oferowania i Wyszukiwania Usług Transportowych
Plan testów do Internetowego Serwisu Oferowania i Wyszukiwania Usług Transportowych Michał Lewowski, Piotr Skowron, Michał Matczuk, Piotr Wygocki 5 czerwca 2006 1 Spis treści 1 Wprowadzenie 3 1.1 Cel..........................................
Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych
Systemy wbudowane Wykład 11: Metody kosyntezy systemów wbudowanych Uproszczone metody kosyntezy Założenia: Jeden procesor o znanych parametrach Znane parametry akceleratora sprzętowego Vulcan Początkowo
NETBEANS PROFILER TOMASZ ŁUKASZUK
NETBEANS PROFILER TOMASZ ŁUKASZUK STRESZCZENIE: Dokument zawiera podstawowe informacje dotyczące programu NetBeans Profiler. Stanowi uproszczoną instrukcję jego używania. Dotyczy NetBeans Profiler w wersji
Testy automatyczne. Korzystające z junit
Testy automatyczne Korzystające z junit Cytaty Kiedy zawiesza się program konkurencji, to jest awaria. Kiedy zawiesza się własny program, to jest drobiazg. Często po awarii pojawia się komunikat typu ID
Zawód tester, czyli na czym polega testowanie. Katarzyna Łabinska Justyna Sacha - Gawlik
Zawód tester, czyli na czym polega testowanie Katarzyna Łabinska Justyna Sacha - Gawlik Agenda: 1. Poznajmy się 2. Tester - kto to jest? 3. Podstawy testowania 4. Testowanie manualne a automatyczne 5.
QEMU działa na procesorach procesorach: emuluje procesory: dostępne dla s.o. hosta:
QEMU Stosunkowo szybki emulator procesora, korzystający z tzw. dynamicznej translacji i kilku innych ciekawych technik programistycznych i optymalizacyjnych. działa na procesorach procesorach: Intel x86,
Technologia informacyjna. Urządzenia techniki komputerowej
Technologia informacyjna Urządzenia techniki komputerowej System komputerowy = hardware (sprzęt) + software (oprogramowanie) Sprzęt komputerowy (ang. hardware) zasoby o specyficznej strukturze i organizacji
Wstęp do testowania : Szymon Ramczykowski 29.04.2014
Wstęp do testowania Presented by: Szymon Ramczykowski Date: 29.04.2014 Kainos 10-Jun-14 Gdzie jesteśmy Co robimy Branże Technologie Kainos w Gdańsku Ponad 100 osób zatrudnionych Wiele ciekawych projektów
Symantec Backup Exec System Recovery 7.0 Server Edition. Odtwarzanie systemu Windows w ciągu najwyżej kilkudziesięciu minut nie godzin czy dni
GŁÓWNE ZALETY Odtwarzanie systemu Windows w ciągu najwyżej kilkudziesięciu minut nie godzin czy dni Firma Symantec wielokrotnie publicznie udowadniała, że dzięki oprogramowaniu Backup Exec System Recovery
Wstęp do Informatyki. Klasyfikacja oprogramowania
Wstęp do Informatyki Klasyfikacja oprogramowania Oprogramowanie komputerowe Funkcjonalność komputera jest wynikiem zarówno jego budowy, jak i zainstalowanego oprogramowania Komputer danej klasy znajduje
Efektywne zarządzanie infrastrukturą IT, inwentaryzacja sprzętu i oprogramowania oraz ochrona danych przed wyciekiem dzięki wdrożeniu Axence nvesion
Efektywne zarządzanie infrastrukturą IT, inwentaryzacja sprzętu i oprogramowania oraz ochrona danych przed wyciekiem dzięki wdrożeniu Axence nvesion 6.0 Maciej Kubat www.axencesoftware.com NETWORK Monitorowanie
UNIX: architektura i implementacja mechanizmów bezpieczeństwa. Wojciech A. Koszek dunstan@freebsd.czest.pl Krajowy Fundusz na Rzecz Dzieci
UNIX: architektura i implementacja mechanizmów bezpieczeństwa Wojciech A. Koszek dunstan@freebsd.czest.pl Krajowy Fundusz na Rzecz Dzieci Plan prezentacji: Wprowadzenie do struktury systemów rodziny UNIX
Programowanie Systemów Wbudowanych
Programowanie Systemów Wbudowanych Debugowanie z GDB Iwona Kochańska Gdansk University of Technology GNU debugger Identyfikacja i naprawianie błędów to część procesu wytwarzania oprogramowania Techniki
Dni: 3. Opis: Adresaci szkolenia
Kod szkolenia: Tytuł szkolenia: ISTQB/TTA ISTQB - Technical Test Analyst Dni: 3 Opis: Adresaci szkolenia Szkolenie jest skierowane do testerów posiadających certyfikat ISTQB Certified Tester przynajmniej
Diagnostyka pamięci RAM
Diagnostyka pamięci RAM 1 (Pobrane z slow7.pl) Uszkodzenie pamięci RAM jest jednym z najczęściej występujących problemów związanych z niestabilnym działaniem komputera. Efektem uszkodzenia kości RAM są
27/13 ZAŁĄCZNIK NR 4 DO SIWZ. 1 Serwery przetwarzania danych. 1.1 Serwery. dostawa, rozmieszczenie i zainstalowanie 2. serwerów przetwarzania danych.
1 Serwery przetwarzania danych 1.1 Serwery dostawa, rozmieszczenie i zainstalowanie 2. serwerów przetwarzania danych. 1 1.2 Konsola zarządzająca serwerami dostawa, rozmieszczenie i zainstalowanie 1. konsoli
NETWORK Monitorowanie serwerów, urządzeń i aplikacji INVENTORY Inwentaryzacja sprzętu i oprogramowania, audyty legalności USERS Monitorowanie
www.axence.pl NETWORK Monitorowanie serwerów, urządzeń i aplikacji INVENTORY Inwentaryzacja sprzętu i oprogramowania, audyty legalności USERS Monitorowanie pracowników HELPDESK Zdalny dostęp, zgłoszenia
Autor: inż. Wojciech Zatorski Opiekun pracy: dr inż. Krzysztof Małecki
Autor: inż. Wojciech Zatorski Opiekun pracy: dr inż. Krzysztof Małecki Cel Konfiguracja i testowanie serwera WWW Apache w celu optymalizacji wydajności. 2/25 Zakres Konfigurowanie serwera Apache jako wydajnego
Budowa aplikacji webowej w oparciu o Maven2 oraz przykłady testów jednostkowych. Wykonał Marcin Gadamer
Budowa aplikacji webowej w oparciu o Maven2 oraz przykłady testów jednostkowych. Wykonał Marcin Gadamer Maven 2 podstawowe informacje Apache Maven jest narzędziem automatyzującym budowę oprogramowania
Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC
Akademia MetaPack Uniwersytet Zielonogórski Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Krzysztof Blacha Microsoft Certified Professional Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC Agenda:
INŻYNIERIA OPROGRAMOWANIA TESTOWANIE INTEGRACYJNE
INŻYNIERIA OPROGRAMOWANIA TESTOWANIE INTEGRACYJNE Definicja ITQB Testowanie integracyjne (integration testing) wykonywane w celu wykrycia defektów w interfejsach i interakcjach pomiędzy modułami lub systemami
Backup & Recovery 12 Home
PARAGON Backup & Recovery 12 Home Polska wersja językowa Backup & Recovery 12 Home to bogate pod względem funkcjonalności oprogramowanie do tworzenia i przywracania kopii zapasowych. Nieważne, czy chcesz
Nadzorowanie stanu serwerów i ich wykorzystania przez użytkowników
Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Tomasz Kapelak Nr albumu: 187404 Praca magisterska na kierunku Informatyka
NOWY OPIS TECHNICZNY PRZEDMIOTU ZAMÓWIENIA
NOWY OPIS TECHNICZNY PRZEDMIOTU ZAMÓWIENIA Załącznik nr 4 do SIWZ/ załącznik do umowy Przedmiotem zamówienia jest dostawa 2 serwerów, licencji oprogramowania wirtualizacyjnego wraz z konsolą zarządzającą
DVD MAKER USB2.0 Instrukcja instalacji
DVD MAKER USB2.0 Instrukcja instalacji Spis treści V1.0 Rozdział1: Instalacja karty telewizyjnej DVD MAKER USB2.0...2 1.1. Zawartość opakowania...2 1.2. Wymagania systemowe...2 1.3. Instalacja sprzętu...2
System komputerowy. System komputerowy
System komputerowy System komputerowy System komputerowy układ współdziałających ze sobą (według pewnych zasad) dwóch składowych: sprzętu komputerowego (hardware) oraz oprogramowania (software) po to,
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE WINDOWS 1 SO i SK/WIN 006 Wydajność systemu 2 SO i SK/WIN Najprostszym sposobem na poprawienie wydajności systemu, jeżeli dysponujemy zbyt małą ilością pamięci RAM
K. Konopko; Toolchain. Jądro Linuksa. dr inż. Krzysztof Konopko
Jądro Linuksa dr inż. Krzysztof Konopko e-mail: k.konopko@pb.edu.pl 1 Jądro Linuksa Program wykładu: Właściwości jądra Linuksa. Pliki źródłowe jądra. Konfiguracja jądra. Kompilacja i kompilacja skrośna
Wprowadzenie do systemów informacyjnych
Wprowadzenie do systemów informacyjnych Kryteria oceny systemu Podstawowe metody projektowania UEK w Krakowie Ryszard Tadeusiewicz 1 UEK w Krakowie Ryszard Tadeusiewicz 2 Technologia informatyczna dzisiaj
Backup & Recovery 10 Home
PARAGON Backup & Recovery 10 Home Polska wersja językowa Backup & Recovery 10 Home to bogate pod względem funkcjonalności oprogramowanie do tworzenia i przywracania kopii zapasowych. Nieważne, czy chcesz
Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa
1 Java Wprowadzenie 2 Czym jest Java? Język programowania prosty zorientowany obiektowo rozproszony interpretowany wydajny Platforma bezpieczny wielowątkowy przenaszalny dynamiczny Rozumiana jako środowisko
Architektura systemu komputerowego. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling)
Struktury systemów komputerowych Architektura systemu komputerowego Działanie systemu komputerowego Struktura we/wy Struktura pamięci Hierarchia pamięci Ochrona sprzętowa Architektura 2.1 2.2 Działanie