Archiwum kategorii: Testowanie

Ksiażki o testowaniu oprogramowania – po polsku i dla początkujących

Jako że Helion raz po raz rzuca ciekawymi promocjami (niedawno można było złapać całkiem fajne zniżki: -40% na wybrane ebooki i -20% na niektóre książki), zaczęłam przeglądać, co mają ciekawego w kategorii: Książki o testowaniu. Muszę przyznać, że oferta jest niezła (a na pewno lepsza niż jeszcze jakiś czas temu) i jeśli nadal tak będą nęcić promocjami, to chyba skuszę się na pozycje, których jeszcze nie czytałam 🙂

Ksiażki o testowaniu

Ksiażki o testowaniu, dla początkujących

Postaram się uszeregować ksiażki wg stopnia zaawansowania, choć zastrzegam, że nie każdą miałam w ręku:

Czytaj dalej

Dzień Testera Oprogramowania!

Dziś Dzień Testera Oprogramowania! Święto to obchodzone jest 9 września, na pamiątkę pierwszego zarejestrowanego „buga”.

Ćma - idealna na Dzień Testera

Witrażowa ćma na witrażowym oknie. Foto: moje, Chatka pod Potrójną, czerwiec 2015

Dzień Testera i jego historia

Wydarzenie miało mieć miejsce w roku 1945 lub 1947. „Bugiem” była… ćma, która zaplątała się we wnętrznościach komputera Mark II. Rejestracji problemu (w najprawdziwszym papierowym dzienniku!) miała dokonać  sama Grace Hopper, pionierka informatyki. Grace zasłynęła m.in. dzięki swym pracom nad prototypem języka Cobol (1960) i pierwszymi kompilatorami (A-0 system, 1952). Źródła każą jednak traktować to tylko jako anegdotkę – Grace lubiła przytaczać ową historyjkę, a faktycznej rejestracji błędu dokonał któryś z operatorów komputera. Co ciekawe, dziennik można oglądać w Narodowym Muzeum Historii Amerykańskiej  (a jeśli się akurat do Stanów nie wybieracie, jego fotografia jest tu: http://americanhistory.si.edu/collections/search/object/nmah_334663).

Nie zmienia to jednak faktu, że w tamtych czasach owady te były prawdziwym utrapieniem. Pomieszczenia, w których znajdowały się ówczesne komputery, emitowały mnóstwo ciepła, co wabiło wszelkie żyjątka. Stanowiło to spory problem, bo plątające się w obwodach owady wprowadzały autentyczne zakłócenia w działaniu komputerów. Trzeba je było więc odpluskwiać (debugować) i to w faktycznym znaczeniu tego słowa 😉

Drodzy Testerzy, wszystkiego dobrego! Mnóstwa cierpliwości, bystrego oka i żeby tych bugów było jednak jak najmniej, a oprogramowanie cechowało się wysoką jakością. Bo to chyba w całym tym ambarasie jest najważniejsze 🙂

Darmowe konferencje jesienią i zimą

Lato dobiegło końca, zaczyna się nowy sezon, a wraz z nim w kalendarzu CrossWeb zaczęło pojawiać się coraz więcej wydarzeń. Spośród nich wybrałam to, co najbardziej mnie interesuje czyli… Darmowe konferencje 😉

Darmowe konferencje jesienią

Piękniusia fotka poglądowa;) Foto: moje, 2017

Początkiem roku temu tworzyłam podobny spis konferencji na wiosnę/lato, całkiem nieźle sprawdziła mi się ta metoda, bo zmotywowało mnie to do wybrania się na kilka wydarzeń. Tyle tytułem wstępu, zapraszam do przejrzenia, co ciekawego udało mi się znaleźć:

Czytaj dalej

Prasówka #5

Żeby być na bieżąco, co jakiś czas przeglądam moją kolekcję RSS na Feedly.com. Dziś Prasówka z numerem 5. Tematem wiodącym są prezentacje z konferencji (liczę, że jesienią będę mieć w końcu chwilę, aby je obejrzeć) i narzędzia, którym również planuję się przyjrzeć: Gatling, Docker, a także bitbucketowe Pipelines.

Prasówka w sieci - z tej okazji pająk ;)

Krzyżak ogrodowy. Foto: moje. Ogród, 2017

No to lecimy:

Czytaj dalej

Języki skryptowe do automatyzacji testów

Początkujący adepci testowania automatycznego zastanawiają się czasem, jakie są języki skryptowe do automatyzacji testów?

Testy że mucha nie siada

Testy że mucha nie siada! No chyba że na bukszpanie. Foto: moje, ogród, 2017

W czym można automatyzować testy?

Z jednej strony można odpowiedzieć, że prawie we wszystkim. Większość języków oprogramowania nadaje się do automatyzacji testów, a to za sprawą wszechstronności bibliotek używanych do testów.

Np. Selenium, świetne do automatyzacji stron webowych, umożliwia pisanie testów interfejsowych w wielu językach, z czego najpopularniejsze to:

  • C# (wraz z NUnit w roli test runnera),
  • Java (tu do wyboru jUnit lub TestNG),
  • JavaScript (jak to w świecie JS – masa frameworków: WebdriverJS, WebdriverIO, NightwatchJS),
  • Ruby (RSpec, Test::Unit),
  • Python (Robot Framework, unittest, pyunit, py.test),
  • PHP (Behat, Mink).

Podobnie jest w innych narzędziach do automatyzacji, bazujących na driverze – np. Appium.

Języki skryptowe kontra kompilowane

Najlepszym wyborem dla testera będą jednak języki skryptowe. Omijają typowe problemy języków kompilowanych, oferując mnóstwo już zaimplementowanych, typowych funkcji.

Przykład? Wczytanie i sparsowanie pliku CSV do listy w Pythonie zajmuje cztery linijki. CZTERY LINIJKI:

Czytaj dalej

Jak zacząć z testowaniem – artykuł od Girls Who Test

Ilekroć zabieram się za wpis dla początkujących testerów opisujący jak zacząć z testowaniem, natrafiam w sieci na artykuł, który już temat opisuje! Jeszcze nie tak dawno w sieci mało można było znaleźć materiałów na ten temat, a teraz – proszę. Nic tylko czytać! 🙂

Tym razem w oko wpadła mi broszurka przygotowana przez Aleksandrę Kornecką z Girls Who Test.

Jak zacząć z testowaniem - artykuł od Girls who test

Dokument do przeczytania tutaj: https://docs.google.com/document/d/1e9IVt5x_W8FW24R-7BaQh3xf3jShHfJGzMEjm0E1sWg, a w nim:

  • co to jest oprogramowanie i co oznacza termin „testowanie oprogramowania”
  • kompetencje miękkie u testera
  • obowiązki testera
  • ścieżki rozwoju
  • skąd czerpać wiedzę
  • i inne.

Jeśli chodzi natomiast o same Girls Who Test, polecam śledzić ich stronę: http://www.girlswhotest.pl/events/, większość wydarzeń organizują w Warszawie lub Poznaniu. Dziewczyny, trzymam kciuki! 🙂

Konferencja SkładQA 2017 – jak było?

Jakiś czas temu, bo 20 marca 2017, udało mi się zajrzeć na tegoroczną edycję testerskiej konferencji SkładQA. O samej SkładQA pisałam przy okazji omawiania wiosennych wydarzeń w IT.

Logo SkładQA

Zespół KraQA nie zawiódł i tym razem. Profesjonalne prowadzenie konferencji, świetnie wybrana lokalizacja (obszerna hala Starej Zajezdni, która pomieści naprawdę sporo osób), dobre zaplecze techniczne (nagłośnienie itd.), ciekawi prelegenci i przekrój  różnorodnych tematów. Organizatorzy to profesjonaliści i to widać.

Prezentacje na SkładQA

Merytorycznie mogę odnieść się jedynie do trzech ostatnich prezentacji:

  • Marcin Żołna & Karol Pękała – How to become a cybersecurity hero. Z początku myślałam, że ta prezentacja skierowana jest raczej do początkujących. Ale na szczęście nie tylko. Wyniosłam z niej coś dla siebie – wymienione zostało narzędzie OWASP, któremu z pewnością przyjrzę się bliżej.
  • Wiktor Żołnowski – Pragmatyczny QA. Na którejś edycji Quality Excites miałam możliwość wysłuchania prelekcji Wiktora, kiedy jeszcze zajmował się wdrożeniami Agile. Tym razem zaprezentował model CYNEFIN. Nawet nie wiedziałam, że tak nazywa się ten diagram (o którym pisałam zresztą we wpisie Dla kogo Scrum?, lecz w formie dużo bardziej uproszczonej). Warto zatem chodzić na konferencje, zawsze można się czegoś ciekawego dowiedzieć:)
  • Michał Sajdak – Hackowanie aplikacji webowych na żywo – wybrane przypadki. Ta prezentacja totalnie mnie zachwyciła. Prawdziwy show. Niektóre „sztuczki” pobieżnie znałam z artykułów na Sekuraku, ale zobaczenie jak to wygląda na żywo – naprawdę robi wrażenie.

Podsumowując, było to naprawdę dobrze spędzone, INSPIRUJĄCE popołudnie. Chcę więcej i polecam wszystkim:)

Kiedy skończyć testowanie

Testowanie oprogramowania to proces teoretycznie nieskończony. Zawsze można znaleźć warunki lub ścieżki, które nie zostały jeszcze sprawdzone.

Kowal bezskrzydły. Foto: moje, 2016

W warunkach biznesowych proces testowania jest jednak ograniczony (czasem, budżetem, możliwościami). Często pojawia się pytanie: kiedy można zakończyć testowanie, uznając że produkt jest dostatecznie dobrze sprawdzony?

Odpowiedź nie jest jednoznaczna – zakończenie testów jest umowne i zależy od spełnienia jakiegoś warunku:

  • Budżet – kwestia dość prosta.
  • Czas – może produkt „pudełkowy” ze sztywną datą wydania, może wytwarzany w modelu kaskadowym (a może w Scrumie), może trzeba gonić konkurencję, a może po prostu osoba decyzyjna stwierdza, że czas na testy ubiegł – kończymy.
  • Metryki. Tu zaczyna się robić ciekawie, o czym w dalszej części wpisu.

Ciekawy materiał na ten temat od IBM:
[ftp://public.dhe.ibm.com] – kopia [IBM_Kiedy_mozna_zakonczyc_testowanie].

Metryki

Metryki są pewnym założeniem i są to wartości dość względne. Mogą zostać ustalone na początku testowania. Niektóre z nich to np.:

  • Wykonanie założonego procentu przypadków testowych zakończyło się sukcesem (nie zostały wykryte błędy).
  • Ilość wykrytych błędów (lub krzywa wykrywanych błędów) spadła poniżej założonego progu.
  • Pokrycie funkcjonalności testami (manualnymi, automatycznymi) osiągnęło założony zakres, np.:
    • przetestowano ręcznie najważniejszą ścieżkę,
    • pokrycie testami jednostkowymi na poziomie 90%.

Narzędzia do automatyzacji aplikacji desktopowych Windows Forms

Jakich narzędzi można użyć do automatyzacji aplikacji desktopowych, działających w systemie Windows (Windows Forms, WPF)?

Na szczęście istnieje wiele rozwiązań, dzięki którym pisanie testów automatycznych może być całkiem skuteczne. Poniżej kilka propozycji. Większość z nich jest darmowa – poza licencją na Visual Studio (w przypadku pierwszej grupy, opartej o .NET Framework lub rozwiązań Microsoftu).

Inspect - świetne narzędzie pomagające w automatyzacji aplikacji desktopowych

Zapraszam do lektury:

Czytaj dalej