a.....e
a.....e
Moje doświadczenie z #tdd / #bdd na własnym projekcie pisanym czystokodami nowoczesnymi.

Wypisałem sobie 30 ogólnych epiców jakie ma robić moja apka. Biznesowe funkcjonalności.
W każdym z nich opisałem po 5-10 historyjek. W każdej z nich reguły akceptowalności w stylu: jest to, jeśli zrobię to to ma się zadziać to.

Jak duża ma być 1 funkcjonalność testowana? Kiedy jest zbyt ogólna a kiedy zbyt szczegółowa.
  • Najlepsze
  • Wszystkie komentarze
n0c0Mpr3h3nD
@aczutuse: Najpierw sie pisze to co ma dzialac, potem sie koloruje w asbtrakcje przy refaktoringu
69inch
Mam apkę w #java. Kiedy w IDE jako listę argumentów podaję null to oczywiście apka wywala NullPointerExeption. Jeśli jednak odpalić tę samą apkę w CMD i nie podać żadnych argumentów, to wtedy już rzucony zostaje ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0. Dlaczego tak się dzieje? Czy takie zachowanie w ogóle powinno zostać przetestowane? Jeśli tak to w jaki sposób?

public static void main(String[] args) {

String
  • Najlepsze
  • Wszystkie komentarze
LazyInitializationException
@69inch:

Dlaczego tak się dzieje


Bo w jednym przypadku robisz tablicę z jednym nullowm elementem a w drugim pustą
Saly
Saly
1
Jeśli jednak odpalić tę samą apkę w CMD i nie podać żadnych argumentów, to wtedy już rzucony zostaje ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0. Dlaczego tak się dzieje?


@69inch: tablica argumentów jest pusta, ciekawe dlaczego nie mogę z niej wybrać pierwszego elementu?
69inch
Proszę o wyjaśnienie czy dobrze rozumiem działanie i zastosowanie #cucumber Wiem, że głównie służy do automatyzacji testów ale powiedzmy, że chciałbym go użyć w testach manualnych. Czy każdy krok (Given, When, Then) musi służyć do zaimplementowania kodu, który faktycznie przeprowadza test, czy np Given może służyć do konfigurowania testów? Chodzi mi o taki fragment kodu jako przykład:

public class StepDefinition {
private PatternSearch ps;
private String txt;

@
  • Najlepsze
  • Wszystkie komentarze
a.....e
a.....e
@69inch: Twój When to powinien być kolejny Given (jako And). Potem When "Offset is calculated" z offset = ps.search(txt), i Then "Result offset equals {int}"
69inch
69inch Autor
1
@Given: Wypok nie ogarnia kodu, sorki, już edytowane xD
Koczkozaur
Koczkozaur
  • adult
5
Treść przeznaczona dla osób powyżej 18 roku życia...
pago
pago
3
#bettercoding #programowanie #testowanieoprogramowania #testy #bdd #tdd

Cześć,
popełniłem wpis na temat konfiguracji Spock 2.0 + Maven w kilku wariantach: minimalnej, z customowymi nazwami klas testowych oraz integracja ze Spring'iem (SpringBoot).

Dla niewtajemniczonych: Spock to z frameworków testowych (podobnie jak JUnit). Jak wszystko - ma on swoje wady i zalety. Jednak w niektórych zastosowaniach (np. BDD, czy testy integracyjne) może okazać
  • Najlepsze
  • Wszystkie komentarze
Meserole
Meserole
idzie follow
itakniktniezapamieta
itakniktniezapamieta
@pago: da się Spocko testować ui?
S.....n
Tyle się naczytałam o #tdd #bdd, trochę widziałam jak to działa w praktyce, ale że zespół dopiero zaczynał, to powiedzmy, że nie wyszło to książkowo ( ͡° ͜ʖ ͡°)

Pracuje ktoś w zespołach, w których podejście test-first rzeczywiście działa i się sprawdza - przyspiesza delivery, zmniejsza ilość błędów, pomaga wypuszczać lepszy soft? Od czego zależy powodzenie - dobrych wymagań, zrozumienia wśród managementu, umiejętności
  • Najlepsze
  • Wszystkie komentarze
Dasad
Dasad
Dasad
0
Cześć :)

Jak wiadomo podejście BDD jest podejściem biznesowym, nie rozpisujemy testowania aplikacji krok po kroku tzn.

When I fill name
And I fill last name...
  • Najlepsze
  • Wszystkie komentarze
gherkin_test
gherkin_test
Potrzebuję porady. Nie mam doświadczenia w pisaniu BDD i dopiero zaczynam przygodę i wiem, że długa droga przede mną. Mam do napisania w Gherkinie TC, który będzie w przyszłości zautomatyzowany. Problem polega na tym, że nie jest to klikanie tylko w appce ale też muszę zmodyfikować URL, który dokonuje zmian w DB. Jednak do rzeczy, mam problem jak zdefiniować zmienną w URL, czy w ogóle można zdefiniować tą zmienną w Gherkinie, np
  • Najlepsze
  • Wszystkie komentarze
smaleckg
Bawie sie jasmine. Mam aplikacje w której będe chciał testować na webpacku z zaleznościami nodowymi(npm). Chciałbym dodatkowo móc mierzyc pokrycie testami kodu aplikacji (nie wiem jeszcze czym, może Karma?). Łatwiej będzie jeśli Jasmine będe miał w wersji standalone(specRunner.html w przeglądarce) czy odpalanie w konsoli wersji zainstalowanej npm?
#jasmine #bdd #tdd #javascript #programowanie #testowanieoprogramowania
  • Najlepsze
  • Wszystkie komentarze
IOException
#programowanie #bdd #cucumber Jak napisać .feature i scenario: akcji:

1. Dodawanie elementu
2. Edytowanie elementu
3. Aktywacja elementu
4. Dezaktywacja elementu
  • Najlepsze
  • Wszystkie komentarze
markaron
Mirki, korzysta ktoś z Was z Behaviour Driven Development w komercyjnych projektach? Najlepiej w projektach kilku osobowych. Ostatnio miałem przyjemność prezentować to podejście kilkunastu osobom i wszyscy się zgodzili, że fajne, ale i tak na to w firmie nie ma czasu. Jak to jest u Was w firmach?

P.S. u mnie w firmie też nie ma czasu...

#programowanie #bdd #informatyka
  • Najlepsze
  • Wszystkie komentarze
markaron
Mirki, jak dodać JBhave do IntelliJ?

#programowanie #java #bdd #intellij #jbehave
  • Najlepsze
  • Wszystkie komentarze
saul
saul
2
Hej mirki, znacie jakąś dobrą literaturę, ewentualnie inne materiały, które pozwoliłyby mi się bardziej wgłębić w temat TDD i BDD? Szczególnie w kontekście PHP.

#tdd #bdd #programowanie
  • Najlepsze
  • Wszystkie komentarze
m.....s
m.....s
Tutsplus chyba wszyscy znają, ale gdyby ktoś przeoczył, w tym tygodniu pojawił się darmowy kurs będący wprowadzeniem do testowania. Omawiane są:

— testy jednostkowe: #phpunit

— testy funkcjonalne: #codeception

—
  • Najlepsze
  • Wszystkie komentarze
shigella-deshige
g.....i
g.....i