Consolidate JUnits on to a single portal - junit

I would like to consolidate all my jUnits onto a single web portal (like fitnesse) and build them every night for a consolidated report. Are there any opensource tools available for it ?

I think you need continuous integration system, such as CruiseControl and Hudson. You could write Ant script to compile and run your test cases periodically.

Related

Can I execute only certain Tasks from a Package in a deployed SQL catalog?

In a deployed SSIS project, is a Package the smallest executable unit?
Is there any straight way to execute only certain tasks within a Package - like in Design Mode?
It's possible to use parameters to switch on and off sections of a package for different runs but that would need to be factored in while building it.
Unfortunately, this functionality is not available yet but parameters allow to run certain task as per the run requirement.
You may also try using environment to setup your run if that is more consistent.

When to use script task in place of sql task and web service task in SSIS

I am new to SSIS. My problem is , I have to do a databse query. Then, I have to do a web service call passing in the result that I got from the db query, to the web service .
Either I can use sql task first for db query and web service task next for web service call. Another way is to do do entire thing in the c# code and put that in script task.
I can use enterprise library for doing db query through the C# code and then call the web service.
What is the better approach to do it ?Which one gives better performance?
Both approaches can work. Both will likely result in approximately the same performance - usually the query execution on SQL Server is the slowest part, and it does not matter how you invoke it.
But if you do everything in C# code and put it in script task - what is the benefit of SSIS? You can as well do everything in C# and put it in standalone console app.
Usually one uses SSIS to avoid writing code, and use declarative program definition - which is more maintainable, easier for others to understand and support, etc. Someone who opens a package and sees SQL task and Web Service task will be able to understand and tweak what's going on without opening Script Task and examining the code. It also requires less developer expertise to maintain such package.
Script Task is then only used when something can't be done directly by existing SSIS task or transform. If I saw a package with all the code in a Script Task - I would ask why the person used SSIS at all? Doing it with standalone console app would be simpler, more reliable (than the same code inside Script Task), avoid unnecessary dependency, etc.
Short: if you DO use SSIS - avoid Script Task when possible.

Exporting test data result in Hudson

Does anybody know of an easy way to export test results in Hudson? We have some integration tests that are failing intermittently and our executives would like an excel-style report of the failures, in order to do this we need direct access to the backing data or perhaps the ability to export to csv.
Without knowing specifics of your build languages or integration testing frameworks, I suggest that you write a build task that exports your testing output into some common location, on or off the server.
You could also publish the testing output as an artifact from the job, and have an external tool pull the data from the permalink on the job's page.
Furthermore, you could create a Hudson job that runs automation to transform the testing output into the Excel format that your executives desire. For example, if you are using JUnit, you could write a script to get the test's output XML from the build, parse it, and output into an excel format. This Hudson job might run nightly or could be triggered after the build of the main project.

Configuring project report generation for Hudson within Hudson

There are a number of plugins for Hudson to create coverage, test result, metrics and other reports.
It seems that all of them require you to add extra configuration to your build scripts (or Maven POM) for every project that you want to have the reporting done. For example, if you want to have a FindBugs or a Cobertura report, you need to add the report-generating step to your projects.
Is it really necessary to update every single POM file? That is a lot of repeating oneself, and it requires updating the target project's source repository (where the POM is located).
Is it possible to instead have a setting just within Hudson to enable report generation? It seems that since all you are required to do is enable the respective Maven plugin with its default settings. Cannot this be done externally by Hudson.
This is not possible - the Hudson philosophy is that your build tools should generate the reports. Hudson will pick those up and render them in the UI.
I think this is what sonar is trying to solve. It does generate all kinds of reports (Code coverage/pmd/checkstyle, etc) for your projects without having to add configuration to your projects. This helps a lot to cut down duplication if you have many projects to check.

Comparing SSIS package code...any suggestions?

I've hit the inevitable state where I have to do a diff on the code within two versions of a SSIS package.
What have you used successfully other than what I'm going to do now by opening up 2 instances of VS and go over it box by box and variable by variable?
Note: The things that are important to compare in my case are:
Variables
Code in Execute SQL Tasks
Order of Tasks
Data Flows
Order of data flow components
Try BIDS Helper. It prepares both versions by normalizing whitespace and splitting long lines before making the comparison. Most changes can be easily recognized.
A Visual Studio extension has been deployed in March 2017 to Visual Studio Marketplace. It is called SSIS Compare and Merge Tool. You can install it using Tools menu than Extensions and updates and search for online extensions or download and install the .VSIX file from Visual Studio Marketplace
https://marketplace.visualstudio.com/items?itemName=TamasTIPost.SSISCompareMergeTool-18170
There are some utilities that will do this:
http://www.microsoft.com/communities/newsgroups/en-us/default.aspx?dg=microsoft.public.sqlserver.dts&tid=0619e97f-4dd4-4946-bd41-888e751a5d72&cat=en_US_2b8e81a3-be64-42fa-bd81-c6d41de5a219&lang=en&cr=US&sloc=&p=1
ApexSQLDiff
Randy
I use Notepad++ to compare dtsx (xml) files. Some times even write some code to extract components for example to extract all SQL stored in a large SSIS package with dozens of ExecuteSQL tasks.
UPDATE: Just found this Bi xPress. Here is a video explaining how it works
Updated with the latest locations and consolidated the different answers.
There are a number of tools that try to help managing, comparing and merging SSIS and other otherwise difficult to merge file formats favored by SQL Server Analysis Services, Integration Services and reporting services.
Putting SQL code in stored procedures and managing these using SSDT and Git/TFVC is a useful first step. For the more exotic file formats extend your toolbelt with additional tools like:
BI Developer Extensions (formerly BIDS Helper) free!
Apex SQL Diff Pro
Bi xPress
SSIS Compare Merge Tool
Each work slightly differently and the cost varies, but they all apply normalization and visualization to help you understand and potentially merge the differences between these files.
Aside from that, many changes may be possible with enough understanding of the XML using tools like Notepad++ or Araxis Merge. Many merge tools now have have special XML compare/merge capabilities where you can configure how files should be normalized prior to comparison.