The DLLs containing test implementation will be copied to the test machine.
You can activate Test Agent logs and check in the log file which files have been deployed.
To activate these logs:
- Go to the C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE folder
(this is the path for Test Agent 2012, if you are using older version the path with be slightly different). - Change file QTAgentService.exe.config (set the EqtTraceLevel to "4" and CreateTraceListener to "yes"):
<configuration>
<system.diagnostics>
<switches>
<!-- You must use integral values for "value".
Use 0 for off, 1 for error, 2 for warn, 3 for info, and 4 for verbose. -->
<add name="EqtTraceLevel" value="4" />
</switches>
</system.diagnostics>
<appSettings>
<add key="CreateTraceListener" value="yes"/>
</appSettings>
</configuration>
Restart Test Agent and you will find the file VSTTAgent.log created in the same directory.
Start your tests now and then check this logfile. You will find entries like this one (just search for "Copying remote file":
I, 5856, 4, 2014/01/31, 09:50:58.283, <computer name>\QTAgentService.exe, Copying remote file: C:\Users\<tfs build user>\AppData\Local\VSEQT\QTController\<test run>\Deployment\<your DLL file> to: C:\Users\<local user>\AppData\Local\VSEQT\QTAgent\<test run>\<test configuration>\Deployment\<your DLL file>
Now you can check if all your DLLs have been deployed.
Note: The source path is located on the machine Test Controller is running on, the destination path is located on the test machine (where Test Agent is running).
As much as I know unmanaged DLLs will not be deployed along with "unit tests DLLs" so you will have to make sure they will be deployed.
You can do it using Test Settings: