Skip to main content

Posts

Showing posts from December, 2015

Upgrading to NUnit 3.0 - OneTimeSetUp: SetUpAttribute attribute not allowed in a SetUpFixture

After upgrading to NUnit 3.0, which became recently available, some of my tests started to fail. When I look at the test results, they all failed with the following error message: SetUpAttribute attribute not allowed in a SetUpFixture In NUnit 3.0, there are some breaking changes regarding the usage of the SetUpAttribute and the SetUpFixture.  You can no longer use the SetUpAttribute and TearDownAttribute inside a SetUpFixture. Instead you have to use the OneTimeSetUpAttribute and OneTimeTearDownAttribute. In NUnit 2.0, I had the following code: In NUnit 3.0, this has to change to: More information can be found here: https://github.com/nunit/nunit/wiki/SetUp-and-TearDown-Changes https://github.com/nunit/nunit/wiki/Breaking-Changes

Open Live Writer re-introduces Blogger support

Last week I blogged about the release of Open Live Writer , the open source fork of Windows Live Writer. I also mentioned that Google decided to pull the plug from the old authentication system, making neither Windows Live Writer and Open Live Writer available for usage with Blogger anymore. One week later, and thanks to the power of open source, I’m happy to say that I can write my blog post in Open Live Write again(the online Blogger editor wasn’t a pleasant experience). In the timespan of a week Martin Woodward made 3 new releases each improving the Blogger integration: https://github.com/OpenLiveWriter/OpenLiveWriter/releases So thanks Martin for this early Christmas present!

RedBook - Readings in Database Systems

Almost every application uses data. Without this data the application is useless. So if you are a DBA, SQL specialist or developer, you should care about data and how it is stored. This makes  'Readings in Database Systems' a must read: Readings in Database Systems (commonly known as the "Red Book") has offered readers an opinionated take on both classic and cutting-edge research in the field of data management since 1988.

TFS 2015: The 'System.Collections 4.0.10' package requires NuGet client version '3.0' or above, but the current NuGet version is '2.8.60318.667'.

After upgrading an existing solution to the new build system in TFS 2015, the build failed with the following errors: The 'System.Reflection.Extensions 4.0.0' package requires NuGet client version '3.0' or above, but the current NuGet version is '2.8.60318.667'. The 'System.Reflection.Primitives 4.0.0' package requires NuGet client version '3.0' or above, but the current NuGet version is '2.8.60318.667'. The 'System.Resources.ResourceManager 4.0.0' package requires NuGet client version '3.0' or above, but the current NuGet version is '2.8.60318.667'. The 'System.Collections 4.0.10' package requires NuGet client version '3.0' or above, but the current NuGet version is '2.8.60318.667'. The 'System.Diagnostics.Debug 4.0.10' package requires NuGet client version '3.0' or above, but the current NuGet version is '2.8.60318.667...

Azure DocumentDB playground

If you want to learn about Azure DocumentDB , Microsoft's NOSQL solution in the Cloud, go take a look at the DocumentDB Query Playground . It gives you an interactive environment to try the rich querying functionality that Azure DocumentDB offers over schema-free JSON data.

SQL Server Performance issues after upgrading from Team Foundation Server 2010 to 2015

After upgrading a Team Foundation Server 2010 environment from a customer to Team Foundation Server 2015, we noticed an enormous spike in CPU and memory usage on the database server. When we drilled further into the issue, we saw the same SQL Server statement being executed over and over again: On the MSDN forums, we found some more information . This is a bug in the TFS 2015 upgrade process that only seems to exist when you upgrade from TFS 2010. A SQL script is available that solves the problem, but the issue is also fixed in TFS 2015 Update 1. So I would recommend that if you have this issue, upgrade to Update 1.

TechNet Virtual Labs

If you want to test a Microsoft product in a risk free environment, try TechNet Virtual Labs . It offers a wide range of virtual environments for testing Microsoft's newest products and technologies.     I forgot that this existed, until a colleague sent an email about it(Thanks Joeri). So if you want to play with for example the Team Foundation Server 2015 bits but don't want to put it on Azure or download and run a VM locally, just search for 'Team Foundation' and a large set of VMs and labs are available. Great stuff!

Cloud Scalability Patterns

Great conversation with Matt Johnson from the Patterns and Practices group, about things we should consider when moving our applications to the cloud. If you want to build your application for cloud scale, this video offers some great insights. Don't forget to take a look at the links he referred to: Azure architecture guidance Performance optimization guidance Scalability best practices Cloud design patterns Async tips

Google did it again - Not found error in Windows Live Writer and Open Live Writer

In the summer of 2015, Google turned off there old authentication system and made the switch to OAuth 2.0. Although better security can only be encouraged in this case it had the unfortunate side effect to break Windows Live Writer, the blog writer I used for years. Luckily, thanks to the effort of Scott Hanselman, Google was kind enough to re-enable the old security mechanism for a little bit longer. In the meanwhile Scott started the effort to make Windows Live Writer Open Source. Last week this story came to an end with the announcement of Open Live Writer , an open source fork of Windows Live Writer. Although some features are still missing, this is great news as it will give Windows Open Live Writer a new future... Inside the announcement, the support for OAuth 2.0 was mentioned as to be added 'VERY SOON': ADDING VERY SOON: Google runs the excellent Blogger blog service. We've worked with the Blogger Team within Google on this project, and they've been k...

Architecture Blueprints for Microsoft Azure

If you are an architect that want to use the power of Microsoft Azure, Microsoft created a set of architecture blueprints for different scenario’s that help you build new solutions fast. For every diagram, a 2D and 3D version(in Visio) and a video explaining the blueprint is available. Certainly useful!​

Visual Studio 2015 Update 1–Parallel Test Execution

If you are still looking for an excuse to start installing Visual Studio 2015 Update 1 , here I got you one: a new feature that existed before but is now finally back in the box is Parallel Test Execution . What is it? From the release notes: The Visual Studio Test Platform introduces support parallel execution of test cases. Parallel test execution leverages the available cores on the machine, and is realized by launching the test execution engine on each available core as a distinct process, and handing it a container (assembly, DLL, or relevant artifact containing the tests to execute), worth of tests to execute. The unit of scheduling is the test container. Within each container, the tests will be executed as per the semantics of the test framework. If there are many such containers, then as processes finish executing the tests within a container, they are handed the next available container. Parallel execution is supported through all launch points - CI, command l...

Goats and Leadership

What do goats and leadership have in common? The answer is … EVERYTHING as explained in the following YouTube video: I found this video on the Nordstrom technology people lab website . Certainly worth to have a look…

Generate your test data

Over the years I used multiple tools to generate test data. Most the time I ended up creating some useful test data by hand or automatically generating random “gibberish”. Last week I discovered GenFu with has the following promising tagline “Awesome Test Data”. GenFu is a library you can use to generate realistic test data. It is composed of several property fillers that can populate commonly named properties through reflection using an internal database of values or randomly created data. You can override any of the fillers, give GenFu hints on how to fill them. For the following Person class… …combined with one line of code… …it generates the following test data… Looks like magic to me! I’m going to try it out for my next set of unit tests…

Windows 10 Development Workshop

Interested in learning Windows 10 development? But you don’t know where to start? Check out the training material for the Hands on Workshop for Windows 10 Developer Training (pfew, what a title!) From the GitHub repo : The purpose of the Workshop is to provide a more interactive developer training experience that minimizes lecture in favor of more instructor led lab experiences. Each module contains a minimal PPT deck and one or more 'hands on labs' for direct delivery in a classroom setting. The lab manuals and solution files for this module have been moved. All hands on labs are now in their own repo at https://github.com/Windows-Readiness/WinDevHOLs so that they can be easily downloaded independently of the slide decks. The day long agenda consists of the following modules, each 60 minutes split between PPT and Lab Intro to the Universal Windows Platform Adaptive UI Live Tiles & Notifications Edge & Web Apps Cloud ...

TypeScript 1.6–Interface errors

This week, a colleague asked me to have a look at his code. He was working on a web project with some TypeScript code but the moment he opened the project hundreds of errors appeared. We discovered that he recently upgraded to TypeScript 1.6 and in this version the object checking rules became more strict: Before TypeScript 1.6 you could do something like this: Note that although the interface only defines 3 properties, the compiler doesn’t complain when I add an extra property to my object literal. In TypeScript 1.6 this is no longer the case, and an error is thrown when you add a property that is not part of the interface: You can suppress this error by passing the --suppressExcessPropertyErrors compiler option. Although I understand the reasoning behind this change, I’m not a fan of this behavior, as it breaks the dynamic nature of JavaScript. More information in the following GitHub issue: https://github.com/Microsoft/TypeScript/issues/3755

Visual Studio Team Services–Code Search extension

With the introduction of the Visual Studio Marketplace, a growing list of great extensions for the Visual Studio ecosystem is coming to us.   The first extension I installed was Code Search , it promises to “provide a fast, flexible and accurate search across your code” inside Visual Studio Team Services. Sounds great! After installing it, when you browse to your Visual Studio Online project(now renamed to Visual Studio Team Services), go to the Code tab and you should see a search box on the top right corner: The search offers a large set of functionality like: Filters: filter by project, by location within a project, by scope, by code type Code collaboration: share search results with other team members Version control integration: lookup history Behind the scenes it is using the power of Roslyn to give you advanced search capabilities. Remark: The code search feature is free at the moment, but this can change after Preview.

TypeScript 1.5 Error–The ‘arguments’ object cannot be referenced in an arrow function

After upgrading a TypeScript project to TypeScript 1.5, the build started to fail with the following error message: “Build: The ‘arguments’ object cannot be referenced in an arrow function in ES3 and ES5. Consider using a standard function expression.” This is the code snippet where the error occured: Starting from TypeScript 1.5 it is no longer allowed to reference the arguments object inside an arrow function. According to the specs, no argument variable is created for an arrow function. To fix this, we can follow the suggestion as mentioned in the error and switch to a normal function expression: More information in the following GitHub issue: https://github.com/Microsoft/TypeScript/issues/1609

Visual Studio Team Foundation Server and Team Services Feature Index

With the incredible pace that Microsoft is releasing new features, and the 3 week release cycle of VS Team Services(aka Visual Studio Online), it’s a challenge to know what features are available in the TFS ecosystem. To help us, Microsoft created a feature index with all the features available to help you plan and track your projects and code, build, test, and release your software applications. Great help! So bookmark this link: https://msdn.microsoft.com/library/vs/alm/overview/alm-devops-feature-index