In Visual Studio 2019, I've suddenly noticed that if a test generates a lot of output to standard output or standard error, the output can no longer be copied in its entirety. In past versions, the output would be truncated in the Test Explorer view, but you could right-click and choose "Copy All" to cause the entire output to be copied to the Clipboard (at which point you could paste it into something and review it), and in fact the output view would include this fact (it read something like "Output truncated, to view all output choose Copy All"). In VS 2019, this no longer appears to be the case - the output is truncated, and the Copy All option copies the truncated output.
Is it possible to still capture all output produced by the tests, or at the very least, increase the amount of output captured prior to truncation in VS 2019?
Very simple test to generate some output:
[TestMethod]
public void TestMethod1()
{
for (int x = 1; x < 2000; x++)
{
Console.Write($"This is iteration {x}. ");
Console.Error.Write($"This is iteration {x}. ");
if (x % 10 == 0) { Console.WriteLine(); Console.Error.WriteLine(); }
}
}
View of Test Explorer after running the test:
Contents of clipboard after choosing "Copy All":
Test Name: TestMethod1
Test FullName: TestTruncation.TestTruncation.UnitTest1.TestMethod1
Test Source: C:\Users\fmillion\source\repos\TestTruncation\TestTruncation\UnitTest1.cs : line 10
Test Outcome: Passed
Test Duration: 0:00:00
Test Name: TestMethod1
Test Outcome: Passed
Result StandardOutput:
This is iteration 1. This is iteration 2. This is iteration 3. This is iteration 4. This is iteration 5. This is iteration 6. This is iteration 7. This is iteration 8. This is iteration 9. This is iteration 10.
This is iteration 11. This is iteration 12. This is iteration 13. This is iteration 14. This is iteration 15. This is iteration 16. This is iteration 17. This is iteration 18. This is iteration 19. This is iteration 20.
This is iteration 21. This is iteration 22. This is iteration 23. This is iteration 24. This is iteration 25. This is iteration 26. This is iteration 27. This is iteration 28. This is iteration 29. This is iteration 30.
This is iteration 31. This is iteration 32. This is iteration 33. This is iteration 34. This is iteration 35. This is iteration 36. This is iteration 37. This is iteration 38. This is iteration 39. This is iteration 40.
This is iteration 41. This is iteration 42. This is iteration 43. This is iteration 44. This is iteration 45. This is iteration 46. This is iteration 47. This is iteration 48. This is iteration 49. This is iteration 50.
This is iteration 51. This is iteration 52. This is iteration 53. This is iteration 54. This is iteration 55. This is iteration 56. This is iteration 57. This is iteration 58. This is iteration 59. This is iteration 60.
This is iteration 61. This is iteration 62. This is iteration 63. This is iteration 64. This is iteration 65. This is iteration 66. This is iteration 67. This is iteration 68. This is iteration 69. This is iteration 70.
This is iteration 71. This is iteration 72. This is iteration 73. This is iteration 74. This is iteration 75. This is iteration 76. This is iteration 77. This is iteration 78. This is iteration 79. This is iteration 80.
This is iteration 81. This is iteration 82. This is iteration 83. This is iteration 84. This is iteration 85. This is iteration 86. This is iteration 87. This is iteration 88. This is iteration 89. This is iteration 90.
This is iteration 91. This is iteration 92. This is iteration 93. This is iteration 94. This is iteration 95. This is iteration 96. This is iteration 97. This is iteration 98. This is iteration 99. This is iteration 100.
This is iteration 101. This is iteration 102. This is iteration 103. This is iteration 104. This is iteration 105. This is iteration 106. This is iteration 107. This is iteration 108. This is iteration 109. This is iteration 110.
This is iteration 111. This is iteration 112. This is iteration 113. This is iteration 114. This is iteration 115. This is iteration 116. This is iteration 117. This is iteration 118. This is iteration 119. This is iteration 120.
This is iteration 121. This is iteration 122. This is iteration 123. This is iteration 124. This is iteration 125. This is iteration 126. This is iteration 127. This is iteration 128. This is iteration 129. This is iteration 130.
This is iteration 131. This is iteration 132. This is iteration 133. This is iteration 134. This is iteration 135. This is iteration 136. This is iteration 137. This is iteration 138. This is iteration 139. This is iteration 140.
This is iteration 141. This is iteration 142. This is iteration 143. This is iteration 144. This is iteration 145. This is iteration 146. This is iteration 147. This is iteration 148. This is iteration 149. This is iteration 150.
This is iteration 151. This is iteration 152. This is iteration 153. This is iteration 154. This is iteration 155. This is iteration 156. This is iteration 157. This is iteration 158. This is iteration 159. This is iteration 160.
This is iteration 161. This is iteration 162. This is iteration 163. This is iteration 164. This is iteration 165. This is iteration 166. This is iteration 167. This is iteration 168. This is iteration 169. This is iteration 170.
This is iteration 171. This is iteration 172. This is iteration 173. This is iteration 174. This is iteration 175. This is iteration 176. This is iteration 177. Thi< Truncated >
Result StandardError:
This is iteration 1. This is iteration 2. This is iteration 3. This is iteration 4. This is iteration 5. This is iteration 6. This is iteration 7. This is iteration 8. This is iteration 9. This is iteration 10.
This is iteration 11. This is iteration 12. This is iteration 13. This is iteration 14. This is iteration 15. This is iteration 16. This is iteration 17. This is iteration 18. This is iteration 19. This is iteration 20.
This is iteration 21. This is iteration 22. This is iteration 23. This is iteration 24. This is iteration 25. This is iteration 26. This is iteration 27. This is iteration 28. This is iteration 29. This is iteration 30.
This is iteration 31. This is iteration 32. This is iteration 33. This is iteration 34. This is iteration 35. This is iteration 36. This is iteration 37. This is iteration 38. This is iteration 39. This is iteration 40.
This is iteration 41. This is iteration 42. This is iteration 43. This is iteration 44. This is iteration 45. This is iteration 46. This is iteration 47. This is iteration 48. This is iteration 49. This is iteration 50.
This is iteration 51. This is iteration 52. This is iteration 53. This is iteration 54. This is iteration 55. This is iteration 56. This is iteration 57. This is iteration 58. This is iteration 59. This is iteration 60.
This is iteration 61. This is iteration 62. This is iteration 63. This is iteration 64. This is iteration 65. This is iteration 66. This is iteration 67. This is iteration 68. This is iteration 69. This is iteration 70.
This is iteration 71. This is iteration 72. This is iteration 73. This is iteration 74. This is iteration 75. This is iteration 76. This is iteration 77. This is iteration 78. This is iteration 79. This is iteration 80.
This is iteration 81. This is iteration 82. This is iteration 83. This is iteration 84. This is iteration 85. This is iteration 86. This is iteration 87. This is iteration 88. This is iteration 89. This is iteration 90.
This is iteration 91. This is iteration 92. This is iteration 93. This is iteration 94. This is iteration 95. This is iteration 96. This is iteration 97. This is iteration 98. This is iteration 99. This is iteration 100.
This is iteration 101. This is iteration 102. This is iteration 103. This is iteration 104. This is iteration 105. This is iteration 106. This is iteration 107. This is iteration 108. This is iteration 109. This is iteration 110.
This is iteration 111. This is iteration 112. This is iteration 113. This is iteration 114. This is iteration 115. This is iteration 116. This is iteration 117. This is iteration 118. This is iteration 119. This is iteration 120.
This is iteration 121. This is iteration 122. This is iteration 123. This is iteration 124. This is iteration 125. This is iteration 126. This is iteration 127. This is iteration 128. This is iteration 129. This is iteration 130.
This is iteration 131. This is iteration 132. This is iteration 133. This is iteration 134. This is iteration 135. This is iteration 136. This is iteration 137. This is iteration 138. This is iteration 139. This is iteration 140.
This is iteration 141. This is iteration 142. This is iteration 143. This is iteration 144. This is iteration 145. This is iteration 146. This is iteration 147. This is iteration 148. This is iteration 149. This is iteration 150.
This is iteration 151. This is iteration 152. This is iteration 153. This is iteration 154. This is iteration 155. This is iteration 156. This is iteration 157. This is iteration 158. This is iteration 159. This is iteration 160.
This is iteration 161. This is iteration 162. This is iteration 163. This is iteration 164. This is iteration 165. This is iteration 166. This is iteration 167. This is iteration 168. This is iteration 169. This is iteration 170.
This is iteration 171. This is iteration 172. This is iteration 173. This is iteration 174. This is iteration 175. This is iteration 176. This is iteration 177. Thi< Truncated >
This is now fixed, after I upgraded to version 16.8.5 this bug is no longer happening and the results are not truncated.
According to this link it's fixed since VS2019 16.7 update.