We use TypeMock in a project. We also use the TypeMock AutoDeploy feature so we can use different versions of TypeMock on one build server. The AutoDeploy feature of TypeMock makes it possible to run your unit tests on the build server without installing TypeMock on the build server. You can read about this feature in my other blog post:
https://www.locktar.nl/programming/embed-typemock-in-your-tfs-build-definition
Because we are using VS2013 now, we had to upgrade the TypeMock version to a new Release Candidate version that I got from TypeMock for testing. When we where testing, we saw that the tests where failing because the old version was referenced in the AutoDeploy folder. So we had to update the TypeMock version in source control to keep the AutoDeploy functionality working on the build server. After some tries, I now have a best practice for update TypeMock.
- Uninstall TypeMock (not always necessary but for this Release Candidate they advised me to do it)
- Install your new version of TypeMock (you whole team off course)
- Search for your AutoDeploy folder in the root of your project and check it out of TFS
- Open your solution and go to the TypeMock menu and choose “Fix references…”
- Choose the second radio button that says “Copy libraries from installation folder to:” and browse to your AutoDeploy folder of step 3
- Hit ok. Now every test project that uses TypeMock will be modified with the new TypeMock version. The TypeMock folder in the AutoDeploy folder now also has the new version of the dll.
- If some of the projects have a TypeMock references to your program files, you have to change it. This is needed because otherwise the AutoDeploy feature isn’t working. To fix this, you have to delete the reference and add a new one. Browse for the right dll to the TypeMock folder in the AutoDeploy folder in the root of your project. Repeat this for every reference in every project that has the wrong path.
- Browse with Windows Explorer to your TypeMock installation directory in program files. In this installation directory you will also find an AutoDeploy folder. Copy all the files in that folder and overwrite your old TypeMock version files in the AutoDeploy folder in the root of your project.
- Check everything in and test your build
When you followed these steps, you have the new TypeMock version in your project in minutes.