Kdo si myslí, že OSGI je nepoužitelné ? rubrika: Programování: Java

3 jan.flos
položil/-a 22.5.2014

Podle mě je OSGI sice pěkné protože je to komponentní framework. Je ale nepoužitelný z hlediska Unit Testů. Trvá to fakt dlouho než se to spustí.

odkaz
4 Carless
odpověděl/-a 22.5.2014

Naopak je dobře použitelný. Přece netestujete OSGi container, ale svůj kód. BundleContext a těch pár dalších věcí jsou interface, takže se dají mockovat.

Komentáře

  • jan.flos : Asi jsem se vyjádřil né příliš přesně. Měl jsem na mysli implementaci Eclipse Equinox. Tato implementace rozšiřuje původní koncepci o plugin-architekturu. OSGI Bundles nebli Plugins definují tzw. Extension Points. RCP R4. Tyto extension points jsou definovány v metadatech plugin.xml. V tomto prostředí je pro mě obtížné mockovat, protože je vlastní funkcionalita založená na existenci služeb services. 22.5.2014
  • Carless : Tak Equinox, v tom jsem delší dobu nedělal, ale mělo by platit: a) netestovat framework, tudíž si udělat rozhraní, které vrací rozhraní oněch service. b) adaptér mezi Equnixem a tvým kódem a Test Double adaptér, který ti vrátí ten který mock budeš potřebovat. Buď tě to nasejří tak, že to budeš chtít přepsat třeba ve Springu. Pak vyměníš adaptér, kterej naloaduje Spring context a bude zase vracet services. Nebo Guice nebo cokoliv jiného (Pico Hmm). Eclipse je open source, dá se naimportovat do Eclipse a číst. Já jsem de-facto stáhnul kus, který se podobal tomu, co jsem chtěl dělat a ty postupy prach sprostě obšlehl. Pod čarou: Mám dojem, že extensions nejdou moc dobře mimo Eclipse IDE. Eclipse samo o sobě moc maven nemá rádo, ale funguje pěkně klikace. 13.6.2014

Pro zobrazení všech 2 odpovědí se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.