In this blog, I am going to discuss about how attachments are stored when you file a bug from the Test Runner.

When you file a bug in the test runner, below are the sequence of operations that happen:

  1. The test is paused
  2. The Test Runner requests data from all the data diagnostics adapters (e.g. Video, Actions, IntelliTrace e.t.c). This is a synchronous operation i.e. the TestRunner will wait until all the data adapters have returned their respective data. This can take some time especially in the lab scenario with multiple agents. By default, each agent will have 5 data adapters enabled. If there are 3 agents, then the test runner waits until all 15 data adapters have returned their data. If there are custom adapters that take more time to return data, this time will again increase.
  3. The data is attached to test result
  4. Links are added from bug to test result.

Therefore you can find all diagnostics adaptor data in “All Links” section in the bug and not in the “Attachment” section because they are actually links.

image

They can also be accessed from the “Details” section of the bug where these are organized in a nice way.

image

You can also notice them in the test result after you file the bug

image

Now that you know that the attachments are physically stored in test result, below are some of the obvious things that you should be careful about.

  1. If you delete any of these attachments from test result, the link from bug will not work. If your developer complains that he is not able to access the logs, this could be one issue.
  2. If you delete the test run/test result that contain such attachments, the links from bug do not work.

Bug Filing and Reset Behavior

If you try to reset a test after filing a bug, we show the following message box precisely for the above reason.

image

When you reset the test, the attachments on the test are wiped off. This causes dangling bug links. In a sense, the bug itself becomes a bit useless. To prevent users from accidently ending up in this situation, we prevent reset operation after the user has filed a bug on the test.