2014-06-26 2 views
7

Ostatnio czytałem w testing and examples w ramce testowania go i nie bardzo rozumiałem, do czego służą. Widzę, że dokumentacja mówi:Jaki jest sens "przykładów" w ramach testowania go (golang)?

Pakiet również uruchamia i weryfikuje przykładowy kod. Przykładowe funkcje mogą zawierać komentarz wiersza konkluzji, który zaczyna się od "Output:" i jest porównywany ze standardowym wyjściem funkcji podczas wykonywania testów. (Porównanie ignoruje początkową i końcową spację).

Jednak nie doceniam powodu, dla którego to istnieje. Kiedy piszę moje testy, wydaje się, że powinno być więcej niż jasne, jak używać kodu, po prostu czytając testy jednostkowe i testy porównawcze. Jaką dodatkową motywację zapewnia sekcja przykładowa? Wydaje mi się to zbędne, ale jestem pewien, że twórcy go postawili to z dobrego powodu, szczególnie dlatego, że zdają się empatyzować dobrą praktykę programistyczną poprzez projektowanie swojego języka. Mam nadzieję, że zrozumiem ich motywację lub jak tę część języka można wykorzystać w pozytywny sposób w projekcie golang! :)

Odpowiedz

10

W Go, kod źródłowy służy również do generowania dokumentacji. Przykłady nie są przeznaczone do testowania, ale raczej do dokumentacji. Po skompilowaniu przykładów możesz upewnić się, że działają one prawidłowo dla każdego, kto ich używa.

Przykłady znalezione w standardowych bibliotekach można uruchamiać bezpośrednio w przeglądarce, korzystając z golang.org do przeglądania dokumentacji. Godoc.org zamiast tego łączy twój przykładowy kod bezpośrednio do play.golang.org, gdzie możesz go wypróbować.

przykładu i przykładu użycia, patrz http://golang.org/pkg/sort/

+2

Dodawanie to testy są często streszczenie, testu prywatnego API i/lub jest przeznaczony jest do wykrywania przypadków krawędź. Posiadanie osobnych przykładów (tj. "To w ten sposób powinieneś używać mojego pakietu/interfejsu API") sprawia, że ​​staje się on bardziej przejrzysty dla użytkownika pakietu, zamiast próbować łączyć testy API +. – elithrar