środa, 31 października 2012

How to create unit test for WIX installer (msi database)

If we want to test installer in WIX technology we can use API from Microsoft.Deployment.WindowsInstaller.dll which is included to WiX Toolset. Below is manual step by step how to test installer database for attached files.

1 Use WiX Toolset v3.6\bin\Microsoft.Deployment.WindowsInstaller.dll and decompile by .dotPeek (it's free) and browse Database class. Now you can execute SELECT query on installer database.
2 Create unit test project, for example for NUnit test framework.
3 Add reference to dll WiX Toolset v3.6\bin\Microsoft.Deployment.WindowsInstaller.dll
4 Create NUnit Test and add to test "Database database = new Database(path to msi, DatabaseOpenMode)
List listFiles = (database.ExecuteNonQuery("select 'FileName' from 'File' ")).Cast().ToList();”

5 Check expected file names in your WIX installer(like .wxs, wxi) with list listFiles. Data could be extracted from .wxs, .wxi by .Net xmlDoc class to read XML and next by foreach to compare file name with above listFiles.

Now you have unit test to check your files names from WIX Installer .wxs,.wxi configuration with compiled installer MSI.
The described unit test How To for WIX is only one of the ideas to test functionality of installer because we can also create unit test for custom actions or use Wix Lux.


dotPeek web site
WIX Lux
Useless WIX unit test example

czwartek, 25 października 2012

Installer w WIX - 3 linki wstępu

Narzędzie do tworzenia instalatora aplikacji/portalu/serwisu, które jest coraz bardziej popularne- mowa o WIX.

Interesujący jest fakt, że Visual Studio 2012 nie wspiera już tworzenia instalatora jako projekt .vdproj, co było często realizowane do wersji Visual Studio 2010. Microsoft oferuje tworzenie projektu instalatora w WIX-ie, choć sam Visual Studio 2012 nie posiada edytora WIX-a tak przyjaznego użytkownikowi jak WixEdit, IsWix, SharpDevelop.

Pierwsze praktyczne wrażenia: Projekt .vdproj może być skonwertowany do formatu WIX przez narzędzie WIX-a Dark. Niestety oceniam, że jest to narzędzie niezbyt przydatne przy konwersji dużego projektu .vdproj.

Artykuł w trakcie kończenia...

Seria artykułów o WIX
Tutorial WIX
Narzędzie Dark
SharpDevelop
WixEdit
IsWix

wtorek, 23 października 2012

Scrum, Kanban - Jira plugin

Miałem dzisiaj możliwość wysłuchania ciekawych informacji na kolejnej prezentacji o narzędziach(plugin-ach) dla metodyk Agile(Scrum, Kanban) w Issue-Track-erze Jira.

Plugin GreenHopper ma ciekawe wsparcie dla wyświetlania wykresu podsumowującego sprint w scrumie.
Wydaje mi się po tej prezentacji, że takie narzędzie jest warte używania, gdyż wykonuje dużo czasochłonnej pracy, jak różnorakie liczenie i podsumowywanie sprintu.

Choć jak wiadomo tym, którzy korzystają z fizycznej tablicy to przy karteczkach na takiej tablicy może występować lepsza komunikacja (w przypadku zespołu umieszczonego w jednym pomieszczeniu). Dla zespołu rozproszonego powyższe narzędzie prawdopodobnie może smiało zastąpić fizyczną tablicę z karteczkami.

Wikipedia JIRA
Strona plugin-u GreenHopper


Strona narzędzia JIRA
Greenhopper Overview, Source:  youtube.com.


Greenhopper prezentacja, Source:  youtube.com.



sobota, 6 października 2012

Maintenance produktu - metodologia Kanban

Obecny rozwój oprogramowania wiąże się z wykorzystaniem metodologii Kanban.

Artykuł w trakcie tworzenia...

Wikipedia Kanban
Szkolenia z metodologii Kanban
Artykuł o Kanban - www.poddrzewem.pl