• Artykuły
  • Forum
  • Ciekawostki
  • Encyklopedia
  • Testowanie oprogramowania



    Podstrony: [1] 2 [3] [4]
    Przeczytaj także...
    Jakość oprogramowania (ang. software quality) – ogół cech produktu programowego, które wpływają na zdolności spełniania przez niego określonych wymagań, m.in. elastyczność, funkcjonalność, integralność, niezawodność, efektywność, użyteczność, wydajność.Międzynarodowe Centrum Kongresowe w Katowicach – centrum kongresowe w Katowicach przy ulicy Olimpijskiej. Centrum będzie to zarządzane przez Miejski Ośrodek Sportu i Rekreacji w Katowicach i należy do miasta Katowice. Centrum zostało wybudowane w latach 2011-2015. Należy do Strefy Kultury, nowej części Katowic, poświęconej kulturze, zlokalizowanej na dawnych terenach przemysłowych. Ma bezpośrednie połączenie ze Spodkiem
    Informacje ogólne[ | edytuj kod]

    Testowanie nie jest w stanie wykryć wszystkich defektów oprogramowania, jednak może dostarczyć informacji o jego zgodności z wymaganiami klienta, czy też z jego oczekiwaniami. Trzeba pamiętać, że testowanie nie sprawdza oprogramowania pod kątem wszelkich możliwych warunków początkowych, lecz jedynie w wyselekcjonowanych warunkach.Testowanie może we wczesnych fazach projektu wykryć defekty nie tylko oprogramowania, ale i specyfikacji wymagań czy projektu. Wczesne wykrycie defektu jest ważne z ekonomicznego punktu widzenia, ponieważ gwarantuje niższe koszty jego naprawy. Defekty oprogramowania nie wynikają jedynie z błędów kodowania. Duża część defektów jest wynikiem błędów popełnionych podczas definicji wymagań. Testowanie oprogramowania sprowadza się również do analizy statycznej i testowania wymagań. Spora część defektów jest spowodowana niejednoznacznymi wymaganiami i skutkuje nieprawidłowym wskazaniem obecności defektu tak jak w tablicy pomyłek. W sytuacji gdy wymagania są niejasne to ciężko jest określić poprawne zachowanie systemu. W skrajnych przypadkach taki defekt może być celowo nienaprawiany lub odłożony do naprawy w kolejnej iteracji.

    Tablica pomyłek jest stosowana przy ocenie jakości klasyfikacji binarnej (na dwie klasy). Dane oznaczone etykietami: pozytywną i negatywną poddawane są klasyfikacji, która przypisuje im predykowaną klasę pozytywną albo predykowaną klasę negatywną. Możliwa jest sytuacja, że dana oryginalnie oznaczona jako pozytywna zostanie omyłkowo zaklasyfikowana jako negatywną. Wszystkie takie sytuację przedstawia tablica pomyłek.Weryfikacja i walidacja oprogramowania znana jest również jako kontrola jakości oprogramowania. Do kryterium weryfikacji należy zakwalifikowanie produktu, czy spełnia lub pasuje do właściwego jego wykorzystania (wysoki poziom kontroli) – czy jest on wbudowany w odpowiedni produkt.

    Podział testów[ | edytuj kod]

    TestingCup – Mistrzostwa Polski w testowaniu oprogramowania, Katowice, MCK, maj 2016

    Testy można podzielić na kilka sposobów:

  • ze względu na weryfikowane obiekty (przykładowo testy klas, komponentów, podsystemów, systemu lub zintegrowanych systemów)
  • na białoskrzynkowe (strukturalne), weryfikujące kod źródłowy oraz czarnoskrzynkowe testujące warstwę interfejsu
  • bazujące na wymaganiach (testy weryfikujące zgodność implementacji z wymaganiami, np. testy funkcjonalne, testy graficznego interfejsu użytkownika), testy niefunkcjonalne – por. klasyfikacja wymagań (i testów) FURPS+ zdefiniowana w ramach Rational Unified Process (RUP) czy testy weryfikacji (testy sprawdzające zgodność implementacji z założeniami np. programisty)
  • ze względu na metodę weryfikacji z wyróżnieniem testów statycznych, bez uruchomienia aplikacji i testów dynamicznych wymagającej pracę na uruchomionym oprogramowaniu
  • Częstym błędem jest stawianie znaku równości między testami funkcjonalnymi, a testami czarnej skrzynki. Testy funkcjonalne mogą wymagać umiejętności czytania kodu źródłowego, czego nie wymaga się przy testach interfejsów zewnętrznych.

    Testy funkcjonalne znane są także jako testy czarnej skrzynki, ponieważ osoba testująca nie ma dostępu do informacji na temat budowy programu, który testuje. Często testy takie są wykonywane przez inne osoby niż programiści tworzący program. Nierzadko są to osoby nie posiadające wiedzy z zakresu programowania. Osoba testująca program nie opiera danych testowych na budowie wewnętrznej programu, lecz na założeniach funkcjonalnych, jakie powinien spełniać program zgodnie z dokumentacją.Testy integracyjne – jeden z etapów testowania oprogramowania, wykonywany w celu wykrycia defektów w interfejsach i interakcjach pomiędzy modułami lub systemami.

    Dodatkowo można wyróżnić testy wykonane w określonym celu:

  • retesty – testy poprawek defektów
  • testy regresywne – testy oprogramowania po wykonaniu zmian, niekoniecznie w kodzie (przykładowo aktualizacji wersji systemu operacyjnego)


  • Podstrony: [1] 2 [3] [4]



    w oparciu o Wikipedię (licencja GFDL, CC-BY-SA 3.0, autorzy, historia, edycja)

    Warto wiedzieć że... beta

    Testy akceptacyjne, to testy, których celem nie jest wykrycie błędów a jedynie uzyskanie formalnego potwierdzenia wykonania oprogramowania odpowiedniej jakości.
    Model V – sekwencyjny model wytwarzania oprogramowania, najczęściej posiadający cztery poziomy testowania odpowiadające czterem poziomom rozwoju oprogramowania.
    Test jednostkowy (ang. unit test) – w programowaniu metoda testowania tworzonego oprogramowania poprzez wykonywanie testów weryfikujących poprawność działania pojedynczych elementów (jednostek) programu – np. metod lub obiektów w programowaniu obiektowym lub procedur w programowaniu proceduralnym. Testowany fragment programu poddawany jest testowi, który wykonuje go i porównuje wynik (np. zwrócone wartości, stan obiektu, wyrzucone wyjątki) z oczekiwanymi wynikami – tak pozytywnymi, jak i negatywnymi (niepowodzenie działania kodu w określonych sytuacjach również może podlegać testowaniu).
    Programowanie zwinne (ang. agile software development) – grupa metod wytwarzania oprogramowania opartego na programowaniu iteracyjno-przyrostowym, powstałe jako alternatywa do tradycyjnych metod typu waterfall. Najważniejszym założeniem metodyk zwinnych jest obserwacja, że wymagania odbiorcy (klienta) często ewoluują podczas trwania projektu. Oprogramowanie wytwarzane jest przy współpracy samozarządzalnych zespołów, których celem jest przeprowadzanie procesów wytwarzania oprogramowania. Pojęcie zwinnego programowania zostało zaproponowane w 2001 w Agile Manifesto.
    Iteracja (łac. iteratio – powtarzanie) – czynność powtarzania (najczęściej wielokrotnego) tej samej instrukcji (albo wielu instrukcji) w pętli. Mianem iteracji określa się także operacje wykonywane wewnątrz takiej pętli.
    Testy strukturalne (ang. white-box testing) – znane są także jako testy białej lub szklanej skrzynki. Polegają na testowaniu programu poprzez podawanie na wejściu takich danych, aby program przeszedł przez każdą zaimplementowaną ścieżkę. Zasady te są definiowane przez kryteria pokrycia wszystkich pętli oraz wszystkich warunków. Testy białej skrzynki nie są w stanie wykazać braku implementacji funkcji, którą powinien posiadać system docelowy. Sprawdzają jednak dokładnie operacje wykonywane w zaimplementowanych metodach.
    Oprogramowanie (ang. software) – całość informacji w postaci zestawu instrukcji, zaimplementowanych interfejsów i zintegrowanych danych przeznaczonych dla komputera do realizacji wyznaczonych celów. Celem oprogramowania jest przetwarzanie danych w określonym przez twórcę zakresie. Oprogramowanie to dział informatyki. Oprogramowanie jest synonimem terminów program komputerowy oraz aplikacja, przy czym stosuje się go zazwyczaj do określania większych programów oraz ich zbiorów.

    Reklama

    Czas generowania strony: 0.011 sek.