As I had mentioned in my earlier posts that you can enable a number of Diagnostic Data Adapters in test setting so as to collect various types of data while running tests in Test Runner. Sometimes it is confusing if you don’t get any log from a diagnostic data adapter though you’ve enabled it in test setting. There can be many reasons for this behavior like data collector is not expected to generate log in that particular scenario, data collector pre-reqs are not met successfully, that particular data collector is not expected to generate log at all :) e.g Network Emulation. This post intends to explain various reasons for log generation failure from each data diagnostic adapter. This is NOT an advanced guide for troubleshooting all data diagnostic adapters’ warnings / errors but you can quickly refer to it if you are not seeing logs from a data diagnostic adapter.
IntelliTrace and Test Impact
Both IntelliTrace and Trace Impact data collectors have a number of pre-reqs:
1) They work only for applications written with managed code
2) AuT process need to be started after launching the Test Runner as they needs to instrument modules, binaries or executables that are loaded into a process.
3) ASP .NET Client Proxy for IntelliTrace and Test Impact needs to be enabled in test setting for client role while collecting test data from ASP. NET applications hosted on remote boxes.
4) Computer’s IP address / hostname need to be used instead of “127.0.0.1” “local host” while collecting data from locally hosted ASP.NET apps e.g. please use http://microsof-7f734b/webapplication1/default.aspx instead of http://localhost/webapplication1/default.aspx
5) AuT Process / required modules are included for data collection in configuration settings of collectors. Please check articles mentioned below for details on configuring IntelliTrace and Test Impact:
a. Configuring IntelliTrace
b. Configuring Test Impact
So if one / more prereqs mentioned above are not satisfied then you won’t get IntelliTrace / Test Impact data collector log. Another common mistake that you may do: Launching AuT after launching MTR but from an already opened command prompt. Please avoid it.
One more important thing to note:
You’ll never get both IntelliTrace and Test Impact log for same Test Case result. This is because IntelliTrace log is generated only for Test Cases marked as failed in Test Runner whereas Test Impact log is generated only for Test Cases marked as passed in Test Runner. Additionally, Test Impact log is never attached to bug irrespective Test Case is passed / failed whereas IntelliTrace log will always be attached to bug irrespective Test Case is passed / failed.
It NEVER generates any log and just used to emulate the slow network connection speed. It affects the communication to and from the machine by emulating a particular network connection speed, such as dial-up.
ASP .NET Client Proxy for IntelliTrace and Test Impact
It NEVER generates any log. This proxy enables you to collect information about the http calls from a client to a Web server for the IntelliTrace and Test Impact diagnostic data adapters
I had talked about Video Recorder data collector pre-reqs in my earlier post. These can be the reasons if you are not getting any log from Video Recorder data collector:
1) Window Media Encoder is not installed on box
2) Window Media Encoder hotfix is not installed which is required for Windows Vista, Windows Server 2008 or Window 7 boxes.
3) Desktop experience is not enabled. This is required only for Windows Server 2008 boxes.
4) Test Agent was not running as interactive process. This is required in case you are collecting video data for a remote role.
5) Desktop session was not active during test execution. If session is minimized / locked then you won’t get proper video log.
6) Collector is configured not to generate log for passed TCs as shown below:
In that scenario you won’t get video log for passed TCs.
System Information is the simplest data diagnostic adapter and is expected to generate log ALWAYS.
There is no specific pre-reqs for Event Log data collector and it is expected to generate log ALWAYS.
These can be the reasons if you are not getting any action log:
1) No actions are done on AuT (Application Under Test)
2) You don’t have appropriate permissions to record actions on AuT. It may happen if AuT is running under high privileges.