2009-07-24 16 views
5

Jakie metody używasz do obsługi zdarzeń testowych jednostki, zwłaszcza gdy wymagają one informacji ze zdarzenia (takie jak współrzędne myszy lub cel zdarzenia)? Czy najczęstszą praktyką jest po prostu przekształcenie zachowania w metodę, która wykonuje podnoszenie, podczas gdy przewodnik po prostu wyodrębnia informacje z wydarzenia, lub czy istnieją skuteczne sposoby symulacji wysyłki zdarzeń w FlexUnit lub Fluint?Unit Testing Flex obsługi zdarzeń

Odpowiedz

3

Najczęściej tworzę obiekt zdarzenia ręcznie i wywołania zdarzenia z obiektu, który jest słuchał, zwłaszcza tak mogę się upewnić, że nie ma pływających detektory zdarzeń, które nie trafiają usunięte poprawnie. Czasami napotykam sytuację, w której moje klasy testowe nie mogą uzyskać dostępu do obiektu dyspozytorskiego. Jeśli o to chodzi, to oddzielenie logiki biznesowej od rzeczywistego metody detektora zdarzeń, zachować metody detektora zdarzeń niezwykle prosty i lekki i przetestować logikę biznesową. Wysyłanie z obiektu jest jednak znacznie lepsze, jeśli możesz.

FlexUnit i Flunit nie przewidują żadnych „symulację” zdarzenia wysyłającego; jeśli możesz uzyskać dostęp do obiektu, będziesz mógł wysyłać z niego, a jeśli nie możesz, FlexUnit/Flunit też nie może.

Korzystając z wydarzeń, warto jednak zrozumieć, w jaki sposób FlexUnit/Flunit oferuje sposoby przeprowadzania testów asynchronicznych. Wysłanie fałszywego zdarzenia oznacza, że ​​rozpoczynasz akcję, która nie kończy się po zakończeniu metody, więc musisz utworzyć test asynchroniczny. Dokumentacja dla FlexUnit znajduje się w ich ASDocs, a Flunit ma dobry dokument online ustawiony na ich stronie głównej: http://code.google.com/p/fluint/wiki/AsyncTest

Powiązane problemy