Dynamo
Primer for v2.0
Polski
Polski
  • Informacje
  • Wprowadzenie
    • Co to jest dodatek Dynamo i jak działa?
    • Podręcznik użytkownika Primer, społeczność i platforma dodatku Dynamo
  • Ustawienia dla dodatku Dynamo
  • Interfejs użytkownika
    • Obszar roboczy
    • Biblioteka
  • Węzły i przewody
  • Podstawowe węzły i pojęcia
    • Indeks węzłów
    • Geometria do projektowania obliczeniowego
      • Geometria — przegląd
      • Wektor, płaszczyzna i układ współrzędnych
      • Punkty
      • Krzywe
      • Powierzchnie
      • Bryły
      • Siatki
    • Składniki programów
      • Dane
      • Matematyka
      • Logika
      • Ciągi
      • Kolor
    • Projektowanie z użyciem list
      • Co to jest lista
      • Praca z listami
      • Listy list
      • Listy n-wymiarowe
    • Słowniki w dodatku Dynamo
      • Co to jest słownik
      • Węzły słownika
      • Słowniki w blokach kodu
      • Przypadki zastosowań w programie Revit
  • Węzły i pakiety niestandardowe
    • Węzły niestandardowe
      • Węzeł niestandardowy — wprowadzenie
      • Tworzenie węzła niestandardowego
      • Publikowanie w bibliotece użytkownika
    • Pakiety
      • Pakiet — wprowadzenie
      • Analiza przypadku pakietu — zestaw Mesh Toolkit
      • Opracowywanie pakietu
      • Publikowanie pakietu
      • Zero-Touch — importowanie
  • Dynamo dla programu Revit
    • Połączenie programu Revit
    • Wybieranie
    • Edytowanie
    • Tworzenie
    • Dostosowywanie
    • Dokumentowanie
  • Dynamo for Civil 3D
    • Połączenie z programem Civil 3D
    • Pierwsze kroki
    • Biblioteka węzłów
    • Przykładowe procesy robocze
      • Drogi
        • Umieszczanie słupa oświetleniowego
      • Teren
        • Umieszczanie doprowadzeń usług komunalnych
      • Narzędzia
        • Zmienianie nazw konstrukcji
      • Kolej
        • Obwiednia prześwitu
      • Pomiary
        • Zarządzanie grupami punktów
    • Tematy zaawansowane
      • Wiązanie obiektów
      • Język Python i program Civil 3D
    • Dynamo Player
    • Przydatne pakiety
    • Zasoby
  • Dodatek Dynamo w programie Forma w wersji beta
    • Konfigurowanie programu Dynamo Player w programie Forma
    • Dodawanie i udostępnianie wykresów w programie Dynamo Player
    • Uruchamianie wykresów w programie Dynamo Player
    • Różnice między usługami obliczeniowymi dodatku Dynamo a dodatkiem Dynamo na komputerze
  • Kodowanie w dodatku Dynamo
    • Bloki kodu i język DesignScript
      • Co to jest blok kodu
      • Składnia języka DesignScript
      • Krótka składnia
      • Funkcje
    • Geometria przy użyciu języka DesignScript
      • Geometria DesignScript — podstawy
      • Geometryczne obiekty elementarne
      • Matematyka wektorowa
      • Krzywe: interpolowane i punkty kontrolne
      • Przekształcenie, obrót i inne transformacje
      • Powierzchnie: interpolowane, punkty kontrolne, wyciągnięcie złożone, obrót
      • Parametryzacja geometryczna
      • Przecięcie i ucinanie
      • Geometryczne wartości logiczne
      • Generatory punktów w języku Python
    • Python
      • Węzły języka Python
      • Python i Revit
      • Konfigurowanie własnego szablonu w języku Python
    • Zmiany języka
  • Wzorce postępowania
    • Strategie dotyczące wykresów
    • Strategie dotyczące skryptów
    • Dokumentacja obsługi skryptów
    • Zarządzanie programem
    • Wydajna praca z dużymi zestawami danych w dodatku Dynamo
  • Przykładowe procesy robocze
    • Procesy robocze — pierwsze kroki
      • Wazon parametryczny
      • Punkty przyciągania
    • Indeks pojęć
  • Przewodnik Primer programisty
    • Kompilowanie dodatku Dynamo ze źródła
      • Kompilowanie dodatku DynamoRevit ze źródła
      • Zarządzanie zależnościami i ich aktualizowanie w dodatku Dynamo
    • Opracowywanie rozwiązań dla dodatku Dynamo
      • Pierwsze kroki
      • Analiza przypadku Zero-Touch — węzeł siatki
      • Wykonywanie skryptów w języku Python w węzłach Zero-Touch (C#)
      • Dalsze kroki z Zero-Touch
      • Zaawansowane dostosowywanie węzłów dodatku Dynamo
      • Używanie typów COM (międzyoperacyjnych) w pakietach dodatku Dynamo
      • Analiza przypadku NodeModel — niestandardowy interfejs użytkownika
      • Aktualizowanie pakietów i bibliotek dodatku Dynamo dla dodatku Dynamo 2.x
      • Aktualizowanie pakietów i bibliotek dodatku Dynamo dla dodatku Dynamo 3.x
      • Rozszerzenia
      • Definiowanie niestandardowej organizacji pakietów dla dodatku Dynamo 2.0+
      • Interfejs wiersza polecenia dodatku Dynamo
      • Integracja z dodatkiem Dynamo
      • Opracowywanie rozwiązań dla dodatku Dynamo dla programu Revit
      • Publikowanie pakietu
      • Kompilowanie pakietu z programu Visual Studio
      • Rozszerzenia jako pakiety
    • Prośby o ściągnięcie (pull)
    • Oczekiwania dotyczące testowania
    • Przykłady
  • Dodatek
    • Często zadawane pytania
    • Programowanie wizualne i dodatek Dynamo
    • Zasoby
    • Uwagi do wydania
    • Przydatne pakiety
    • Pliki przykładowe
    • Mapa integracji hosta
    • Pobierz plik PDF
    • Skróty klawiaturowe dodatku Dynamo
Powered by GitBook
On this page
  • Testy jednostkowe
  • Testy systemowe
Edit on GitHub
Export as PDF
  1. Przewodnik Primer programisty

Oczekiwania dotyczące testowania

Na tej stronie opisano, czego oczekujemy, jeśli chodzi o testowanie nowego kodu dodawanego do dodatku Dynamo.

Dlatego też Masz nowy węzeł, który chcesz dodać. Wspaniale. Nadszedł czas, aby dodać kilka testów. Warto to zrobić z dwóch powodów.

  1. Pomaga to ustalić, gdzie rozwiązanie nie działa

  2. Gdy ktoś inny coś zmieni i spowoduje uszkodzenie węzła, powinno to też uszkodzić testy. W ten sposób osoba, która uszkodziła testy, musi naprawić powstały błąd. Jeśli nie spowoduje to uszkodzenia testów, to w dużej mierze Twoim problemem będzie obsługa użytkowników, których modele zostaną uszkodzone.

Rodzaje testowania w dodatku Dynamo dzielą się na dwa ogólne typy: testy jednostkowe i testy systemowe.

Testy jednostkowe

Testy jednostkowe powinny obejmować możliwie najmniejszy obszar. Jeśli utworzono węzeł, który oblicza pierwiastki kwadratowe za pomocą węzła C# Zero Touch, test powinien sprawdzać tylko ten plik DLL i wykonywać wywołania języka C# bezpośrednio do tego kodu. Testy jednostkowe w ogóle nie powinny obejmować dodatku Dynamo.

Powinny obejmować:

  • Testy pozytywne (rozwiązanie robi to, co powinno)

  • Testy negatywne (rozwiązanie nie zachowuje się dziwnie w razie przekazania do niego błędnych danych wejściowych)

  • Testy regresji (gdy ktoś znajdzie błąd w kodzie, napisz test, aby upewnić się, że ten błąd się nie powtórzy)

Powinny być małe, szybkie i niezawodne. Większość testów powinna być testami jednostkowymi.

Testy systemowe

Testy systemowe działają na wielu komponentach i sprawdzają, jak są one do siebie dopasowane. Powinny być używane i opracowywane ostrożnie.

Dlaczego? Ich przeprowadzanie jest kosztowne. Musimy zadbać o to, aby zestaw testów działał z jak najmniejszym opóźnieniem.

Idealnie byłoby, gdyby istniała progresywna seria testów obejmująca coraz więcej zestawów oddziałujących ze sobą bloków. Dzięki temu, gdy testy zaczną kończyć się niepowodzeniami, bardzo szybko będzie można ustalić, gdzie leży problem.

Przykłady rzeczy, które wymagają testów systemowych:

  • Nowy typ węzła programu Revit przechowujący w śladzie wiele elementów, a nie tylko jeden element

  • Nowy węzeł obserwacyjny (watch), który wyświetla dane w inny sposób

Przykłady rzeczy, które nie wymagają testów systemowych:

  • Nowy węzeł matematyczny

  • Biblioteka przetwarzania ciągów

Testy systemowe powinny:

  • Potwierdzać, że zachowanie jest poprawne

  • Potwierdzać brak zachowań patologicznych, np. brak wyjątków

PreviousProśby o ściągnięcie (pull)NextPrzykłady

Last updated 2 months ago

Pisząc test systemowy, pierwszą rzeczą, jaką należy zrobić, jest spojrzenie na diagram i ustalenie, które podsystemy są uwzględniane.

ten