Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Setting timeouts for a test suite in mstest

Is there a way to set timeouts for a whole test suite in mstest, or just for individual tests? I.E., if I want the total running time of the tests in suite X to be no more than 2 minutes, how do I do that?

like image 561
nihohit Avatar asked Oct 23 '13 09:10

nihohit


2 Answers

I think it's better to set the timeout in the TestMethod, Set timeout in TestMethod. This way the timeout set does not affect any other test methods.

Sample code before the public test method:

[TestMethod(), Timeout(120000)] 

The timeout is in milliseconds (msecs), 120,000 msecs = 2 minutes, per original question.

like image 196
The Original Android Avatar answered Nov 11 '22 05:11

The Original Android


Add the test settings file and change the timeout settings. Go over link - Specifying Test Settings for Visual Studio Tests

Add test settings files to your solution, and then select the one you want to use. You can add more than one test settings file if you want to be able to switch quickly between different settings.

To set the Test TimeOuts - Do the following

  1. To limit the period of time for each test run and individual tests, choose the Test Timeouts. page in the Test Settings dialog box.

  2. To abort a test run when a time limit is exceeded, select Abort a test run if the total time exceeds and then type a value for this limit.

  3. To fail an individual test if a time limit is exceeded, select Mark an individual test as failed if its execution time exceeds, and type a value for this limit.

like image 27
Carbine Avatar answered Nov 11 '22 06:11

Carbine