MTM
MTM
MTM
Test
Overview
About exploratory and manual testing
About load testing
Quickstarts
Manual testing
Create a test plan
Create test cases
Run manual tests
Test & Feedback extension
Install the extension
Test in Connected mode
Test in Standalone mode
Load testing
Load test with Visual Studio
Load test with VSTS
Load test with Azure portal
View and compare results
Tutorials
Test from the Kanban board
Load test before release
How-to Guides
Manual testing
Track test status
Delete test artifacts
Perform user acceptance testing
Test different configurations
Repeat a test with different data
Collect screenshots and video
Collect diagnostic data
Manage test results
Associate tests with test cases
Run tests from the Test hub
Associate results with requirements
Test & Feedback extension
Explore work items
Add to existing bugs
Get insights from tests
Request stakeholder feedback
Provide stakeholder feedback
Get voluntary stakeholder feedback
Track stakeholder feedback requests
Load testing
Add app performance data
Run Apache JMeter load tests
Record and replay tests
Test private and intranet apps
Test using your own servers
Install certificates and software
Microsoft Test Manager
Guidance for MTM usage
Connect to a team project
Plan tests with MTM
Run manual tests with MTM
Run automated tests with MTM
Record and play back tests
Explore your app
Share steps between test cases
Copy test suites and cases
Test different configurations
Collect more diagnostic data
Test Microsoft Store apps
Reference
Manual testing FAQs
Load testing FAQs
Unable to connect
Default permissions (Security)
Resources
Get Stakeholder feedback
Using Microsoft Test Manager
Load test with Visual Studio
Create custom code & plug-ins
Edit load tests
Analyze load test results
REST API for test management
Web Performance Test API
ALM Blog posts
Manual test posts
Test management posts
Test & Feedback posts
Load test posts
Plug-ins for Visual Studio
Continuous testing
Unit testing
Exploratory & Manual Testing
6/1/2018 • 1 min to read • Edit Online
5-Minute Quickstarts
Learn how to create tests plans and test cases, and run them using the VSTS or TFS web portal. Use the Test &
Feedback extension to explore and find bugs in your apps.
Videos
https://channel9.msdn.com/Series/Visual-Studio-ALM- https://channel9.msdn.com/Series/Test-Tools-in-Visual-
Rangers-Demos/VS-Team-Services-Test-Case-Explorer- Studio/IntroducingTestFeedbackextension/player
v2/player
Step-by-Step Tutorials
Test from the Kanban board
How-to Guides
Track test status
Perform user acceptance testing
Test different configurations
Collect diagnostic data
Manage test results
Explore work items
Get insights from tests
Reference
FAQs for manual testing
Unable to connect
Resources
Get Stakeholder feedback
REST API for test management
Blog posts for testing
Test & Feedback posts
Using Microsoft Test Manager
Blog posts for test management
Load and performance testing
Continuous testing
Unit testing
Exploratory and manual testing scenarios and
capabilities
6/1/2018 • 7 min to read • Edit Online
Holistic approach to manual testing, types of manual testing, and personas involved
You must install the Test Manager extension to use the advanced features of the Test hub.
Test authoring
Create multiple test cases in one operation, or easily add existing test cases to a test suite. Assign single or multiple
testers to execute the tests. View test results and references to a test case across test suites. See more at Create test
cases.
Testing web applications
The Test hub provides a browser-based test runner to run tests for your web apps. Mark test steps and test
outcomes as pass or fail, and collect diagnostic data such as system information, image action logs, screen
recordings, and screen captures as you test. Bugs filed during the tests automatically include all the captured
diagnostic data to help your developers reproduce the issues. See more at Run tests for web apps.
Stakeholder feedback
Seeking feedback from stakeholders outside the development team, such as marketing and sales teams, is vital to
develop good quality software. Using VSTS and TFS, developers can request feedback on their user stories and
features. Stakeholders can respond to feedback requests using the browser-based Test & Feedback extension - not
just to rate and send comments, but also by capturing rich diagnostic data and filing bugs and tasks directly. See
more at Request stakeholder feedback and Provide stakeholder feedback.
Key benefits
Test on any platform. With the Test hub in VSTS and TFS, you can use your browser to access all the
manual testing capabilities. The Test hub enables you to create and run manual tests through an easy-to-use,
web-based interface that can be accessed from all major browsers on any platform.
Rich Diagnostic data collection. Using the web-based Test Runner and Test Runner client you can collect
rich diagnostic data during your tests. This includes screenshots, an image action log, screen recordings,
code coverage, IntelliTrace traces, and test impact data for your apps under test. This data is automatically
included in all the bugs you create during test, making it easy for developers to reproduce the issues.
End to End Traceability. VSTS and TFS provide end-to-end traceability of your requirements, builds, tests
and bugs. Users can track their requirement quality from cards on the Kanban board. Bugs created while
testing are automatically linked to the requirements and builds being tested, which helps you track the
quality of the requirements or builds.
Extensible platform. You can combine the tools and technologies you already know with the development
tools that work best for you to integrate with and extend VSTS and TFS. Use the REST APIs and
contribution model available for the Test platform to create extensions that provide the experience you need
for your test management lifecycle.
Additional resources
Get started with manual testing
Advanced manual testing techniques
Get started with exploratory testing
Advanced exploratory testing techniques
Manual testing with Microsoft Test Manager
Guidance for MTM usage
Get stakeholder feedback with exploratory testing
See also Load and performance testing, Continuous testing, Unit testing.
Load test your app with hundreds of thousands of users using Visual Studio Team Services (VSTS ).
Cloud scalable
Scale to hundreds of thousands of concurrent users, and generate hundreds of thousands of connections in
minutes.
Cloud-based load testing leveraging the power of Azure is like having a whole performance lab at your
fingertips.
Of course you can run your load test from on-premises agents too!
See also Manual and exploratory testing, Continuous testing, Unit testing.
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
Note: Stakeholders cannot create or manage test plans. You must have at least Basic access. See Default manual
testing permissions and access.
4. Name the test plan. Check the area path and iteration. Then choose *Create.
Add a test suite and select backlog items to test
1. Now add test suites for the backlog items that need manual tests. (These backlog items could be user
stories, requirements, or other work items based on the setup of your project.)
You use requirement-based suites to group your test cases together. That way, you can track the testing
status of a backlog item. Each test case that you add to a requirement-based test suite is automatically
linked to the backlog item.
2. Add a clause to filter by the iteration path for the sprint. Run the query to view the matching backlog items.
3. Select the backlog items that you want to test this sprint. Add them as requirements to your test plan by
creating test suites from them.
Now you've created a requirement-based test suite for each backlog item.
Test plans, suites, and test cases are stored in VSTS and TFS as special types of work items.
See also
FAQs for manual testing
Link test cases to work items
Next step
Create manual test cases
Create manual test cases
5/31/2018 • 1 min to read • Edit Online
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
Note: Stakeholders cannot create or manage test cases. You must have at least Basic access. See Default manual
testing permissions and access.
The test suite that you selected was created from a backlog item. When you add a test case to this kind of
suite, the test case is linked automatically to the backlog item.
3. Add test steps with actions and expected results so that any team member can run the test. You can add
attachments to a step if you want.
Now you've created a test case that you can run.
Test iterations are design to support data-driven scenarios, not workflow -driven scenarios. From a best
practice perspective, if you have two test scenarios where the the workflows are different, consider creating
separate test cases.
Assign testers
1. You can reassign test cases so that another tester can run them. Select the tests that you want to reassign.
Then open the shortcut menu (choose the "..." ellipses or right-click) and select the tester you want to run
the tests.
Or, you can assign all the test cases in a test suite to multiple testers. This is useful for acceptance testing.
2. After you select the testers, email them so they know the tests are ready for them to run. (You just need
Basic access to run tests from VSTS.)
See also
FAQs for manual testing
Link test cases to work items
Next step
Run manual tests
Run manual tests
5/31/2018 • 2 min to read • Edit Online
You just need Basic access to run tests that have been assigned to you with Visual Studio Team Services
(VSTS ). Learn more about the access that you need for more advanced testing features.
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
7. When you've run all your tests, save the results and close Test Runner. All the test results are stored in
VSTS. How do I resume testing, or run one or more tests again?
8. View the testing status for your test suite. You see the most recent results for each test.
9. Open a test and choose the test case in the Related Work section. Then use the Child links in the Related
Work section of that work item to view the bugs filed by the tester.
3. Choose OK to start testing. For more information, see Collect diagnostic data.
Can I run tests offline and then import the results?
See also
FAQs for manual testing
Next step
View your test progress
Install the Test & Feedback extension
5/31/2018 • 2 min to read • Edit Online
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
4. Follow the instructions shown to install the Test & Feedback extension in your browser:
If you are using Google Chrome, choose the Install link to open the Google Chrome web store
and follow the instructions to install the extension.
If you are using Mozilla Firefox 50.0 and higher, choose the Download link and save the file to a
local folder on your computer.
Select and drag the downloaded file and drop it on any tab in Firefox.
Choose Install.
You need to install the extension or add-on only once. Afterwards your browser will update it automatically.
Connected mode
Available to all users of VSTS and TFS 2015 or later:
Users with Basic access: Full capture and create capabilities to submit bugs, tasks, and test cases.
Includes collaboration capabilities such as end-to-end traceability, rich insights across completed
exploratory sessions, simplified tracking and triaging for bugs and tasks, and more.
Users with Stakeholder access: Full capture and create capabilities, except for test cases, to submit
feedback and respond to feedback requests from the team.
Feedback experience is available only in VSTS and TFS 2017 or later.
Standalone mode
Available to everyone. No connection to VSTS or TFS is required. Take notes and screenshots with inline
annotations to capture issues. Create bugs and export a session report to share findings.
If you have problems connecting to VSTS or TFS, you may find the topic TF31002: Unable to connect
useful.
See also
FAQs for manual testing
Next step
Use the Test & Feedback extension in Connected mode
Exploratory testing with the Test & Feedback
extension in Connected mode
5/31/2018 • 4 min to read • Edit Online
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
4. Enter the URL of the VSTS account or TFS you want to connect to and choose Next.
If you are connecting for the first time, you may be prompted to sign in.
5. After connecting to the server, the extension shows all the collections, projects and teams in that server.
Select the project or team you want to connect to and choose Save.
If there are many projects or teams, use the search textbox to find the one you need.
The extension is now ready to be used in Connected mode. Depending on your access level (Basic or
Stakeholder) you will see the appropriate UI for either exploratory testing or providing feedback. The extension
remembers your selection and remains connected until the session cookies expire or you explicitly disconnect
from the server.
Some browsers may not provide all of the capture capabilities. See Which web browsers does the
extension support?
4. When you are done exploring and capturing information, create a bug or a task.
5. The bug or task form contains all your captured information. It also contains an image action log
describing your interactions with the page (such as mouse clicks, keyboard typing events, touch gestures,
and more) and page load data. Uncheck these options if you do not want to include this data in the bug or
task.
The image action log is the sequence of steps you took that led to the issue. It can be used to
reproduce the issue and understand the context. Page load data provides preliminary information
about the time it takes to load the pages, such as the resource timings and navigation timelines.
6. Enter a title for the bug or task and add any additional notes you require to the description. Then save the
bug or task.
7. View a list of all your activities in reverse chronological order in the Session timeline page. It shows all
the screenshots, videos, and notes you've captured, the work items such as bugs, tasks, and test cases
you've already filed, and the work items you've explored.
You can use the extension to explore work items in VSTS or TFS.
8. To view a bug or task in VSTS or TFS, choose the link in the session timeline.
2. The test case form contains a list of all your actions up to this point while exploring the app (it reads them
from the image action log).
3. Enter a title for the test case and then edit it as required. For example, uncheck the action steps you don't
want to include in the test case, edit the captured text, and add the expected result. Then save the test case.
4. Continue exploring the application. Create more bugs, tasks, or test cases as required.
Alternatively, open the Recent exploratory sessions list directly in the Runs tab of the Test hub.
3. Now see how you can view your sessions and get insights.
How do I play the video recordings I created with the extension?
Next step
Get insights across your sessions
Exploratory testing with the Test & Feedback
extension in Standalone mode
5/31/2018 • 1 min to read • Edit Online
3. Open the web application you want to explore and start the testing session.
4. When you find an area that has a bug, take a screenshot of the entire screen or any part of it.
5. You can annotate the screenshot using the tools available in the inline annotation toolbar.
6. Make notes about the issue to share with your team, and then save the note.
Create a bug
1. When you have finished capturing information for an issue, choose Create bug.
2. The bug form contains all your captured information. Enter a title for the bug and add any additional notes
you require to the description. Then save the bug.
3. View a list of all your activities in reverse chronological order in the Session timeline page. It shows all the
screenshots and notes you've captured and the bugs you've already created.
End your testing session
1. Continue exploring the application. Create more bugs as you encounter issues with the app.
2. When you're done, stop your session.
The extension automatically creates a session report that contains details of all the bugs created during the
session, and any attachments.
3. The report is saved in the default Downloads folder of your web browser. Share it with the rest of your
team as an email attachment, or copy it to OneNote, Word, or in any other format you prefer.
How do I play the video recordings I created with the extension?
Next step
Use the extension in Connected mode
5/31/2018 • 2 min to read • Edit Online
Load test your app in the cloud using Visual Studio and
VSTS
Visual Studio 2017 | Visual Studio 2015 | VSTS
Check your app or web site's performance before you launch it or deploy updates to production. Find problems
before your customers do. Start running cloud-based load tests in almost no time with Visual Studio and Visual
Studio Team Services (VSTS ).
This example shows how to execute a cloud load test using Visual Studio. You can also run cloud-based load
tests directly using the VSTS portal, or run load tests locally with Visual Studio.
If you haven't connected to your VSTS account before, add your account to the server list.
Enter your VSTS account name (your-account-name.visualstudio.com ).
3. Now run your load test. This will run in the cloud using VSTS.
Your test appears in the queue and waits for its turn to run. When VSTS is ready to run your test, the test
status changes to "Acquiring resources".
A large test run might take up to 10 minutes while VSTS sets up virtual machines and agents for you.
4. You can watch your app's performance while the test runs. Look at the details to review errors, warnings, or
other information about your test.
5. When the test is done, download the report to view the results.
The results include performance counter data, threshold violations, and error information.
6. Review your test's details. Find the number of users where your app's performance fails to meet your
requirements by examining the step load pattern for virtual users.
7. Fix any performance issues that you find in your app's code, then rerun the test.
8. To simulate real-world loads more closely, you can refine your test by specifying web performance test
properties, load test scenario properties, and run settings properties.
Next step
Add app performance data
Run URL-based load tests with VSTS
5/31/2018 • 3 min to read • Edit Online
VSTS
You can run a load test on your web app or site directly using Visual Studio Team Services (VSTS ).
3. Type a name for the load test, then enter the URL you want to test in the center column and in the details
pane on the right. For a simple load test, leave the HTTP method set to GET.
You can add multiple URLs and select the method for each one, such as POST or PUT. You can also add
headers and querystring values if you need to send these as part of the request. The URL Load Test
accesses each of these URLs multiple times using the parameters you specify, and records the results.
4. Open the Settings tab. Here you can change the parameters of the test such as the duration, load pattern,
number of users, and more. To run the test near to your users, select a Load location. Then choose Save.
5. When you have set up all the URLs and parameters for your test, start it by choosing Run test.
6. As the test runs, you see live information about the progress of the test. You can stop the test by using the
Abort link on the toolbar.
View the results of the load test
1. When your test is done, look at the results to see how well your app performed. For example, you can see
an overview of your app's performance in the Summary tab. This tab shows all of the main metrics such
as average response time, user load, requests per second, failed requests, any errors that might have
occurred, and test usage.
The lower section of the Summary tab shows the settings used for the test, and details of the five slowest
requests during the test. If there are any transaction tests, the tab will also show the five slowest of these.
Use the icon above a column to sort the list based on the contents of that column.
2. Open the Charts tab to see a graphical representation of the test results over time. The charts show the
average performance, throughput, errors, and the results of each test request. Hover your mouse pointer
over a chart to see more details.
3. Open the Diagnostics tab to see detailed information such as a list of errors and status messages.
You can also use the icon in the Errors section of the Summary tab to go directly to the Diagnostics
tab.
4. Open the Logs tab to see a list of test runs. Choose the link in the Attachment column to download the
detailed log as a text file.
Key metrics
Response Time. The time it takes for your app to respond to requests is one of the key metrics for
measuring app performance. Most apps perform well when a single user is accessing them, but the
response time can increase dramatically when the app is under load. This can happen if resources such as
CPU, database or other services are at peak capacity, resulting in longer response times.
User Load. The peak user load encountered during the load test run.
Failed Requests. The number of requests that failed, either because the app did not respond or due to
other issues such as connectivity errors. Your app might start throttling requests when under load by
discarding new requests in order to allow existing requests to be processed.
Next step
View and compare load test runs
Load test with the Azure portal
5/31/2018 • 3 min to read • Edit Online
VSTS
Check your web app's performance before you launch it or deploy updates to production. That way, you can
better assess whether your app is ready for release. Feel more confident that your app can handle the traffic
during peak use or at your next marketing push.
5. If you have a VSTS account to use, select that account. If you don't, create a new account.
You simulate load on your app by generating virtual users (customers) who visit your web site at the same
time. This will show how many requests are failing or responding slowly.
As an example, suppose you have an app that gave out coupons at last year's holiday sale. This event lasted
15 minutes with a peak load of 100 concurrent customers. You want to double the number of customers
this year. You also want to improve customer satisfaction by reducing the page load time from 5 seconds to
2 seconds. So, you can test your updated app's performance with 250 users for 15 minutes.
What is the maximum test duration and number of concurrent users?
8. Watch the progress in real time while the test runs. During the first minute, the page loads slower than is
required.
9. After the test is done, view the final results. You can see that the page loads much faster after the first
minute. This helps identify where you might start troubleshooting the problem.
2. Check that the TEST TYPE is set to Visual Studio Web Test and select your HTTP Archive file. Use the
icon to open the file selector dialog.
After the file has been uploaded, you see the list of URLs to be tested in the URL DETAILS section.
3. Specify the user load and test duration, then choose Run test.
4. After the test has finished, view the results in the two panes. The left pane shows the performance
information as a series of charts.
The right pane shows a list of failed requests, with the type of error and the number of times it occurred.
5. Rerun the test by choosing the Rerun icon at the top of the right pane.
Next step
Add app performance data
View and compare your load test runs
6/1/2018 • 2 min to read • Edit Online
2. The Load Test Manager page shows all of the load test runs started by you and all of your team members.
Also see Analyze Load Test Results Using the Load Test Analyzer.
2. Select a test run and open the shortcut menu (in VSTS you can use the icon) to see details of the test run,
or stop a running test.
You can also open a test run by double-clicking it with your mouse.
Use the links in the first row, the names and IDs of the test runs, to open the detailed view of that test run.
3. The Charts section of the page shows a graphical comparison of performance for the two test runs. The
default is a chart for the response time and user load. Choose a different pair of factors from the dropdown
menu to see more performance comparisons.
4. The Test settings section lists the primary settings specified for the two test runs. Again, the names and
IDs of the tests are hyperlinks that open the details of that test.
Next step
Record and replay tests
Add, run, and update inline tests
6/1/2018 • 3 min to read • Edit Online
Tests you create from the Kanban board are automatically linked to the user story or backlog item.
Add tests
1. To start adding tests, open the menu for the work item.
Adding inline tests is the same as adding test cases to a test suite. A default test plan and test suite are
automatically created under which the manual test cases are grouped.
For example, a test suite is created for each user story, and all inline tests are added to that suite. Below,
user story 152 is highlighted which has three manual tests defined with IDs of 153, 155, and 161.
To learn more about test plans and test suites, see Plan your tests.
2. If you have a number of tests to add, simply keep typing each title and click Enter.
To add details to the test case, open it. You can click the title, double-click the inline item, or open the context
menu and choose Open.
Run test
Run the test by selecting Run test from the actions menu for the inline test.
Microsoft Test Runner starts in a new browser instance. For details on running a test, see Run manual tests.
This action automatically changes the linked relationship of the test to point to the new user story.
To create a copy of a test to add to a different user story, select the test, press the CTRL key and then drag and
drop the test onto the card of the user story.
Related articles
Use inline tests for lightweight traceability and to manage manual tests for user stories or other backlog items that
they support. To learn more about test case management, see Create manual tests.
If you find that you don't use this feature, you can disable it from the common configurations dialog.
Additional ways you can quickly add linked items and objects to user stories from the Kanban board:
Add inline tasks
Create a new branch, drive Git development
To initate web-based exploratory testing for a user story, you need to install the Exploratory testing , see
Exploratory test your web app directly in your browser.
Test status in the Kanban board
Test integration with the Kanban board makes it easy for teams to get started with manual testing and then take
advantage of the full testing capabilities in Test Manager later, when required. When test cases are created from
the Kanban board and updated afterwards in Test Manager, the Kanban board shows the correct status. However,
integration is not optimized to work in the other direction; for example, when users create requirement-based
suites with Test Manager instead of in the Kanban board. We intend to make some major performance
improvements to this integration in future releases.
Tutorial: Load test your app before release
5/31/2018 • 3 min to read • Edit Online
If you don't see the template for the web performance and load test project type, ensure you have installed
the required packages during Visual Studio setup. You can re-run the installer by choosing Get tools and
features on the Visual Studio Tools menu.
Record a web performance test
1. Create a web performance test.
2. Your web browser opens. Enter the URL for the website that you want to test.
3. Use your application like you expect your customers to use it. For example, search for items and add them
to the shopping cart. The recorder will capture the HTTP requests and responses.
4. When you're done, stop recording.
Now, Visual Studio looks for dynamic parameters for the HTTP responses to each of your HTTP requests.
A progress bar appears while this happens. If dynamic parameters are found, a table appears. You can
assign constant values to each dynamic parameter.
5. Rename your test. For example, ShoppingCart.webtest.
6. Edit test properties to specify performance goals. For example, you can set a page response time goal of
one second.
7. Save the test.
2. When the load test wizard appears, choose the kind of load test that you'd like to run.
3. Change the load pattern to step load. This gradually adds users over time. How many virtual users can I
configure in my load test?
4. Choose the test mix step.
8. After you finish the wizard, the web performance test is added to the load test and appears in the load test
editor.
2. While the test runs, you discover that the shopping cart page response time exceeds the value you set.
5. Choose the detail view. By analyzing the step load pattern for users, you can identify the user count where
your performance fails to meet your requirements.
6. Fix any performance issues in your application's code and rerun the test.
Next step
Run URL -based load tests
Track test status
5/31/2018 • 5 min to read • Edit Online
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
Add your own charts for test results to visualize what's important for your team. If you already know how to add a
chart, jump to the examples below of charts that you can create.
1. Select the test plan or test suite for your chart in the Test plan tab. Then create a new chart.
2. Select the chart type. Based on the chart, configure the fields that you want to use to group by, or for rows
and columns.
All charts roll up the information for any child test suites of the test plan or test suite that you selected.
3. Save the chart. Now it will be displayed in the charts tab for the test plan or test suite that you selected.
Test results examples
What's the test status for a specific test suite?
Select the test suite from the Test plan tab and add a test results pie chart. Group by outcome.
What's the test status for user stories that my team's testing this sprint?
If you have created requirement-based test suites in your test plan for your user stories, you can create a chart for
this.
1. Group these requirement-based test suites together in a static test suite.
2. Select this static test suite in the Test plan tab.
3. Add a test results stacked bar chart. Choose Suite as the rows pivot and Outcome as the columns pivot.
All charts roll up the information for any child test suites of the test plan or test suite that you selected.
3. Select the chart type. Based on the chart, configure the fields that you want to use to group by, for rows
and columns, or the range (trend charts only).
You can't group by test suite for the test case charts.
4. Save the chart. Now it will be displayed in the charts tab for the test plan or test suite that you selected.
Test case examples
How can I track burndown for test case creation?
Use a stacked area trend chart to view the burndown for how many test cases are ready to be run. Choose State
for the stack by field and Ascending for the sort field.
See also
FAQs for manual testing
Next step
Control how long to keep test results
6/1/2018 • 14 min to read • Edit Online
TIP
You can't change the work item type for an existing work item, but you can copy the work item and specify a new type. Also,
if you have several work items with type changes you want to make, you can export them using Excel, and then re-add them
as a new type.
- Change work item type - Move a work item to another team project
- Remove work items (change State) - Permanently delete work items (web portal)
- Delete work items (web portal) - Permanently delete test artifacts
- Restore work items (web portal)
You can't change type, move work items, or delete/restore work items whose WITs support test management or
that belong to the Hidden Types Category. This includes all work items that track tests—such as test cases, shared
steps, and shared parameters—code review requests and responses, and feedback requests and responses.
- Remove work items (change State) - Permanently delete work items (web portal)
- Delete work items (web portal) - Permanently delete work items (command-line tool)
- Restore work items (web portal) - Permanently delete test artifacts
- Remove work items (change State) - Permanently delete work items (web portal)
- Delete work items - Permanently delete work items (command-line tool)
- Restore work items
- Remove work items (change State) - Permanently delete work items (command-line tool)
TIP
From the web portal, you can multi-select several work items from a backlog or query results page and perform a bulk
update using the associated feature. To change, move, delete, or restore several work items at the same time, see Bulk modify
work items.
Prerequisites
To change the work item type, delete, or remove work items, you must be a member of the Contributors group
or be granted Stakeholder access Or, you must have your View work items in this node, and your Edit work
items in this node permissions set to Allow
To move work items to another team project, you must be a member of the Project Administrators group or
have the Move work items out of this project permission set to Allow. The Contributors group does not have
this permission set at the project-level by default.
To delete work items, you must be a member of the Project Administrators group or have the Delete work
items in this project permission set to Allow. The Contributors group has Delete and restore work items at
the project-level set to Allow by default.
Prerequisites
To remove or delete work items, you must be a member of the Contributors group or be granted Stakeholder
access Or, you must have your View work items in this node, and your Edit work items in this node
permissions set to Allow
To delete work items, you must be a member of the Project Administrators group or have the Delete work
items in this project permission set to Allow. The Contributors group has Delete and restore work items at
the project-level set to Allow by default.
Prerequisites
To remove work items, you must be a member of the Contributors group or be granted Stakeholder access
Or, you must have your View work items in this node, and your Edit work items in this node permissions
set to Allow
To delete work items, you must be a member of the Project Administrators group or have the Delete work
items in this project permission set to Allow. For TFS 2015.1 and earlier versions, the Contributors group has
Delete work items in this project at the project-level set to Not set by default. This setting causes the
Contributors group to inherit the value from the closest parent that has it explicitly set.
To learn more, see Set permissions and access for work tracking.
Changing the work item type refreshes the work item form with the fields defined for the type selected. For
example, you can change a bug to a task and the form will refresh with the fields defined for a task.
You can change a single work item or several multi-selected work items to a new type.
1. Select the Change type... option from the work item form's Actions menu.
Or, from the backlog or query results page, multi-select several work items whose type you want to change.
You can select several work items of the same type or different type so long as you want to change them all
to the same work item type.
Click to open the context menu of one of the selected work items, and choose the Change type…
option.
IMPORTANT
From the Query results page, the Change type… option becomes unavailable if you have checked the Query Editor's
Query across projects checkbox.
2. Select the type and optionally enter a comment.
NOTE
The system automatically resets the State and Reason fields to the default initial values of the specified type.
4. From the Query results page, you must save all work items that you bulk-modified. When you bulk modify
items from the backlog, they are automatically saved. Work items shown in bold text indicate that local
changes have not yet been saved to the data store. The system automatically saves each work item. Refresh
the page to reflect your changes.
1. Open the work item and choose the Move... option from the work item form's Actions menu.
If you don't see the option, then you haven't been granted permissions to move work items out of the
project.
Or, from the backlog or query results page, multi-select several work items whose type you want to change.
You can select several work items of the same type or different type so long as you want to change them all
to the same work item type.
Click to open the context menu of one of the selected work items, and choose the Move… option.
2. Select the destination team project and optionally enter a comment.
Comments are automatically added to the Discussion control and an entry is made to the History control.
Also, the system automatically resets the State and Reason fields to the default initial values for the work
item type that you move.
Deleted work items won't appear in your backlogs, boards, or queries. Deleted items are moved to a recycle bin
from which you can recover them if needed. To delete a test case, test plan, or test suite, or other test-related WITS,
see Delete test artifacts.
1. You can delete a work item from within the work item form, or by multi-selecting work items from a backlog
or query results page.
2. Confirm you want to actually delete the item(s).
NOTE
The Delete work items confirmation dialog indicates there are auto-delete settings (disabled). There are no settings
you can enable or disable. There is only a background process which permanently deletes work items that have been
set to delete.
3. Using multi-select from a backlog or query results list, you can delete several work items at once.
4. You can also delete work items from your Kanban or task board.
Or, you can drag them to the (Recycle bin). You can only access the (Recycle bin) from the
Work hub.
NOTE
Feature availability: The Delete and Recycle bin features require TFS 2015.2 or later version.
1. To restore deleted items, open the Recycle bin from the web portal.
2. Select the items you want to restore and then choose Restore.
NOTE
You'll only see the Permanently delete option if your Permanently delete work items permission is set to Allow.
IMPORTANT
Feature availability: The permanently delete feature of test artifacts is available from the Test and Work hubs for TFS 2017.1
and later versions.
We only support permanent deletion of test artifacts such as test plans, test suites, test cases, shared steps and shared
parameters. Deleted test artifacts won't appear in the recycle bin and cannot be restored. Deletion of test artifacts not only
deletes the selected test artifact but also all its associated child items such as child test suites, test points across all
configurations, testers (the underlying test case work item doesn't get deleted), test results history, and other associated
history.
1. To delete a test case, open it from the web portal and choose the Permanently delete option from the actions
menu. (Bulk deletion is not supported from a query results page.)
NOTE
You'll only see the Permanently delete option if you have the necessary permissions and access.
4. To delete shared steps and shared parameters you need to first manually remove all references to them
before you can delete them.
Related articles
To learn more about managing test artifacts, see:
Create a test plan
Control how long to keep test results
Delete and restore actions performed under the hood
Delete work items
When you delete a work item, the following actions occur:
Generates a new revision of the work item
Updates the Changed By/Changed Date fields to support traceability
Preserves the work item completely, including all field assignments, attachments, tags, and links
Causes work item to become non-queryable and therefore can't appear in any work tracking experience, query
result, or report
Updates charts accordingly, CFD, velocity, burndown and lightweight charts are updated to remove deleted
work items
Removes WIT extensions
Preserves trend data except for the latest value
Removes the work item from the data warehouse/cube similar to as if it was permanently removed.
Restore work items
When you restore a work item, the following actions occur:
Causes a new revision of the work item to be made
Updates the Changed By/Changed Date fields to support traceability
Becomes queryable
All fields remain unchanged
History contains 2 new revisions, one for deletion, and one for restore
Reattaches WIT extensions
Updates charts accordingly, CFD, velocity, burndown and lightweight charts are updated to include the restored
work items
Restores trend data
Adds the work item back to the data warehouse/cube similar
Sets the area or iteration path fields to the root node if the previous area path or iteration paths were deleted.
Delete test artifacts
1. Removes the deleted test artifact from the test case management (TCM ) data store and deletes the underlying
work item
2. Runs a job to delete all the child items both from the TCM side and the underlying work items. This action may
take time (up to a few minutes) depending on the number of artifacts to be deleted.
3. Causes all information in the WIT data store and TCM data store to be deleted and cannot be reactivated nor
restored.
Perform user acceptance testing
5/31/2018 • 2 min to read • Edit Online
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
An important feature of user acceptance testing is that the testers may in fact be the business owners who created
the original business requirements.
Search for and assign testers
In scenarios where you have large development teams the ability search for an individual is also important.
Choose Assign tester from the drop-down menu. In the shortcut menu, choose Assign testers to run all tests
and select the testers you want to include.
Set the Send email option to send all of them a notification email.
Note: The dashboard display shown here is also used for other types of testing such as continuous testing.
If you don't see the data or information you expect in the dashboard charts, verify that the columns in your data
have been added to the Tests view. For details see this blog post.
VSTS
Your users will probably install or run your app on a wide variety of configurations, such as different operating
systems, web browsers, and other variations. You will want to run at least some of your tests in environments that
have those different configurations.
Use your test plan to decide which tests you want to run on which configurations. You have to make sure that
when you run your tests that you have set up your environments for the configurations that you need.
You might draw up a schematic matrix of the combinations that you want to test:
Note: This feature is available only in VSTS. In addition, Stakeholders and Basic users cannot create or
manage configurations.
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
2. Type a name for the variable, such as Browser, and type a value. Add as many values as you wish to the
configuration variable, and then save it.
3. Repeat the steps to create any other configuration variables you need. For example, create a configuration
variable named Operating system with the names of each operating system on which you want to test.
4. Choose the icon and select New test configuration.
5. Type a name for the test configuration and add the configuration variables you created. Choose a value for
each variable for this configuration.
Ensure Assign to new test plans is checked to make this the default configuration for all the new test
plans you create.
6. Save your new test configuration.
2. To assign a configuration to a test suite, open the shortcut menu for the suite and choose Assign
configuration to test suite.
If you add multiple configurations to a test plan or suite, the tests cases are repeated in the plan or suite
with the each of the configurations you have assigned.
3. If necessary, override the default configuration assigned to a test case and assign the configuration you
need. Select one or more test cases, open the shortcut menu, and choose Assign configurations.
4. Search for and select the configurations to assign to these test case(s).
Run tests with each configuration
1. Set up a testing platform for a particular configuration, such as testing the app using Google Chrome on
Windows 10.
2. Select and run a test that has this configuration assigned.
As you run the test, a reminder of the required configuration in shown in the status bar of the Test Runner
window.
Track test results for each configuration
1. Open the Charts tab for your test plan or test suite, choose New, and select New test result chart.
2. Choose the type of chart you require, select Configuration in the Group by list, and choose OK.
A chart is created that can help you track your tests based on configurations. You can pin this chart to your
dashboard.
If you have a test case that appears in several test plans and test suites, you can set the different configurations
for each of these. The same test case can have different configuration settings in different test suites and test
plans.
See also
Overview of manual and exploratory testing
Exploratory test and submit feedback directly from your browser
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
2. Underneath the list of steps, add combinations of parameter values. You might need to scroll down to see
them.
The shared parameter set is displayed in the Parameter values section after you add it. You can now use
these parameters in your test case steps.
3. If the test case has different parameter names for these shared parameters, map the shared parameters to
the local parameters to use the shared parameter data.
When they are correctly mapped, the data associated with the shared parameter is displayed.
4. Add, edit and rename your shared parameter sets in the Parameters tab. View the test cases that reference
them in the Test cases pane.
5. Each shared parameter set is a work item. Open the Properties tab to view or make changes to this work
item. For example, you can assign owners and track changes.
You can't add more than one shared parameter set to a single test case. If two test cases share similar data, for
example, one test case needs customer ID, name, email, and phone, and the second needs customer ID, name
and address, you might consider creating a single shared parameter set containing all of the parameters -
even though a few of the columns in the set will remain unused in each test case.
2. When you've completed the steps, mark the test passed or failed. Then go on to the next iteration of the
test, which uses the next row of parameter values.
2. Double-click a test result to view the test run details, and the test results for each iteration.
Speed up test iterations by using record and playback
It can be error-prone and tedious to work through a long table of parameter combinations. To speed things up,
create an action recording when you run the test with the first set of parameter values, and then play it back for
the other sets.
1. Use Microsoft Test Manager to run the test.
2. Select Create action recording before you choose Start.
3. Complete the first test iteration and then move on to the next one.
4. Mark each step as passed or failed as you work. Enter parameter values in the application exactly as they
are displayed in the test script.
5. Choose Play to run the test with the next set of parameter values. Your actions will be played back
automatically, but you must still verify the results.
Record and playback doesn't work with all applications. For details, see Supported Configurations and Platforms
for Coded UI Tests and Action Recordings.
See also
FAQs for manual testing
Overview of manual and exploratory testing
Testing different configurations
Collect diagnostic data
Manage test results
Screenshot ss = ((ITakesScreenshot)driver).GetScreenshot();
string path = Directory.GetCurrentDirectory() + "SearchTestScreenshot.png";
ss.SaveAsFile(path);
this.TestContext.AddResultFile( path);
3. View the test results and the collected files as attachments to your test results in VSTS or TFS.
Collect video using the Visual Studio Test task
1. To collect video, specify the data collector you want to use in a runsettings file. The video data collector
captures a screen recording when tests are run.
2. In the Visual Studio Test task, specify the location of the runsettings file.
Publish attachments when not using the Visual Studio Test task
If you are not using the Visual Studio Test task, you must publish attachments in your test results in a different
way:
If you are running tests in the build (CI) pipeline, you can use the Copy and Publish Build Artifacts task to
publish any additional files created in your tests. These will appear in the Artifacts tab in your build
summary.
Use the REST APIs to publish the necessary attachments. Code samples can be found in this GitHub
repository.
The NUnit and JUnit test result formats do not have a formal definition for attachments in the results schema, so
the Publish Test Results task cannot publish attachments when these formats are used.
See also
Continuous testing scenarios and capabilities
Set up continuous testing for your builds
Test with unified agents and phases
Pass parameters to tests from a build or release pipeline
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
The following diagnostic data collection features currently work only with the web-based Microsoft Test
runner. See Exploratory test and submit feedback directly from your browser
Screen capture
Capture annotated screenshots from your web app.
1. Ensure that the tab of the app from which you want to capture data is the active tab.
2. Open Test Runner and choose the Capture screenshot icon.
3. Choose the title of the tab containing the app you are testing.
If the tab title you want is not shown in the list, switch to the app and activate it by tapping on the title bar,
or on a child window if the app has opened one.
4. Drag to select the area of the screen you want to capture, or just capture the full screen.
5. If required, edit the title of the screenshot and add annotations and text to it using the icons in the toolbar.
6. Save your screenshot.
If the tab title you want is not shown in the list, switch to the app and activate it by tapping on the title bar,
or on a child window if the app has opened one.
4. The Test Runner will now record all the actions you take on the app's browser tab.
If you create a bug while recording your actions, all the data collected up to that point will be included in the
bug.
5. Finish capturing your actions by choosing the Stop button. The action log is added to the test results as an
attachment.
6. Choose the ActionLog... link at the bottom of the window to view the data captured in the action log.
Screen recording
Capture screen recordings from your web apps.
1. Ensure that the tab of the app from which you want to capture data is the active tab.
2. Open or switch to the Test Runner and choose the Record screen icon.
3. Choose the entire screen, or choose an app to start recording.
If you create a bug while recording your screen, the recording automatically stops and is added to the bug.
4. Finish recording your actions by choosing the Stop button. The recording is added to the test results as an
attachment.
If you do not stop the recording after ten minutes, it stops automatically and is saved as an attachment to
your test results. Restart the recording the Record screen icon if required.
5. Choose the ScreenRecording... link at the bottom of the window to view the captured recording.
4. Choose the data collectors you want to enable. Options include Event log, Action log, Screen and voice
recorder, and System information.
By default, the test runner client lets you to capture screenshots of your desktop app during testing.
5. If you wish, select a build to associate with your test run. A link to this build will be included automatically in
all the bugs you create during the test run.
6. Choose OK to start testing.
If you want to collect advanced diagnostic data such as code coverage, IntelliTrace, and Test Impact data in
addition to the data items listed above, you must configure the data collectors and other run settings in Microsoft
Test Manager (MTM ) and run your tests using MTM. For more details, see Run manual tests with Microsoft Test
Manager.
NOTE
If you have an older version of Microsoft Test Manager, we recommend you upgrade to the latest version. However, if you
have Microsoft Test Manager 2015 or an earlier version installed, you can choose Microsoft Test Runner 2015 and earlier
when you launch the test runner from Test hub using Run with options. You must configure the data collectors and other
run settings in Microsoft Test Manager (MTM) and specify these as the default settings for the test plan. For more details,
see Run manual tests with Microsoft Test Manager.
See also
Exploratory test and submit feedback directly from your browser
Overview of manual and exploratory testing
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
4. Select a limit for how long you want to keep manual test data.
3. If you use Git, and you have more than one branch, set the branch filter to delete test results and builds in
one branch. Meanwhile, you can keep test results in another branch, even though you delete the builds in
that other branch.
Automated test results not associated with builds or orphaned from deleted builds
To clean up automated test results that are left over from deleted builds or test results that aren't related to builds,
for example, results published from external test systems, set the retention limits at the project level. Learn more
See also
FAQs for manual testing
NOTE: At present you cannot use this procedure to associate MSTest V2 tests or tests written in NUnit and
XUnit. Adding this capability is planned for a future release.
For more information about checking in your test project and team build, see Add files to the server and
Continuous integration on any platform. For more information about action recordings and coded UI tests, see
Recording and Playing Back Manual Tests and Use UI Automation To Test Your Code.
The dialog shows a list of test cases currently associated with the selected test method. You cannot
associate more than one test method with a test case, but you can associate a test method with more
than one test case.
If you are using Visual Studio 2015 or earlier, follow these steps to associate your tests.
In Team Explorer open the Work Items tab. If the Team Explorer window is not displayed, open it
from the View menu.
Expand the list of Queries in the Work Items tab to find one that displays your test cases, for
example the default My Test Cases query.
Execute the query by choosing View Results on the shortcut menu (or double-click the query
name).
Open the test case you want to associate by choosing Open on the shortcut menu (or double-click
the test case name).
In the work item, open the ASSOCIATED AUTOMATION tab. All the tests in the solution are
shown in the list together with their associated test projects.
Choose the ellipsis (...) and, in the Choose Test dialog, select the test and then choose OK. The value
in Automation Status is automatically changed to Automated.
Choose Save Work Item to save the changes to the test case.
If a test case already has an automated test associated with it, you must first remove this association
before you can add a different automated test. Choose Remove association to remove the existing
automation.
See Also
Associate automated test results with requirements
Run automated tests from test plans in the Test hub
Run automated tests with Microsoft Test Manager
Test with unified agents and phases
3. You will need a release definition that was created from the Run automated tests from Test Manager
template to run tests from test plans in the Test hub. If you have an existing release definition that was
created using this template, select it and then select the existing environment in the release definition where
the tests will be executed. Otherwise, choose the Create new link in the dialog to create a new release
definition containing a single environment with the Visual Studio Test task already added.
How do I pass parameters to my test code from a build or release pipeline?
4. To configure the Visual Studio Test task and the release definition, start by assigning meaningful names to
the release definition and environment. Then select the Visual Studio Test task and configure it as follows:
Verify that version 2 of the Visual Studio Test task is selected. The version number is shown in the
drop-down list at the top left of the task settings panel.
Verify that Select tests using is set to Test run. What does this setting mean?
If you have UI tests that run on real browsers or thick clients, set (tick) the Test mix contains UI
tests checkbox. This is not required if you are running UI tests on a headless browser.
Select how is the test platform is provisioned, and the version of Visual Studio or the location of the
test platform that is installed on the test machines
If your tests need input parameters such as app URLs or database connection strings, select the
relevant settings file from the build artifacts. You can use the Publish build artifacts tasks in you
build definition to publish the settings file in a drop location if this file is not included in the artifacts.
In the example shown below, the application URL is exposed in the run settings file, and is
overridden to set it to a staging URL using the Override test run parameters setting.
For information about the option settings of the Visual Studio Test task, see Visual Studio Test task.
5. Choose the Agent phase item and verify that the deployment queue is set to the one containing the
machines where you want to run the tests. If your tests require special machines from the agent pool, you
can add demands that will select these at runtime.
You may be able to minimize test times by distributing tests across multiple agents by setting Parallelism
to Multiple executions and specifying the number of agents. More details.
Note: If you are running UI tests such as CodeUI or Selenium on physical browsers such as IE, Firefox,
or Chrome, the agent on the machines must be running in interactive mode and not as a service. More
details.
6. In the Pipeline tab of the release definition, verify that the build definition containing the test binaries is
linked to this release definition as an artifact source.
The test binaries for these tests must be available in the build artifacts generated by your build definition.
3. Choose OK to start the testing process. The system checks that only automated tests are selected (any
manual tests are ignored), validates the environment to ensure the Visual Studio Test task is present and
has valid settings, checks the user's permission to create a release for the selected release definition, creates
a test run, and then triggers the creation of a release to the selected environment.
4. Choose View test run to view the test progress and analyze the failed tests. Test results have the relevant
information for debugging failed tests such as the error message, stack trace, console logs, and attachments.
5. After test execution is complete, the Runs tab of the Test hub shows the test results. The Run summary
page shows an overview of the run.
There is a link to the Release used to run the tests, which makes it easy to find the release that ran the tests
if you need to come back later and analyze the results. Also use this link if you want to open the release to
view the release logs.
What are the typical error scenarios or issues I should look out for if my tests don't run?
6. The Test results page lists the results for each test in the test run. Select a test to see debugging
information for failed tests such as the error message, stack trace, console logs, and attachments.
7. Open the Test Plans page and select the test plan to see the status of your tests if tests are updated after
test execution is complete. Select a test to see the recent test results.
See Also
Associate automated tests with test cases
Associate automated test results with requirements
Test with unified agents and phases
Continuous testing scenarios and capabilities
2. Select the requirements from the list of suggested work items and choose Associate.
3. To see the related test results, select Requirements in the Group by list.
4. On your team's dashboard, add the Requirements quality widget and configure it for the appropriate
build definition and work item query.
5. This shows the pass rate for each of your requirements. Use the links to view the results in more detail, and
the Expand link to see more.
See Also
Associate automated tests with test cases
Run automated tests from test plans in the Test hub
Test with unified agents and phases
Continuous testing scenarios and capabilities
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
2. A banner in the Work hub shows which work item is associated with your session.
3. Launch the Test & Feedback extension. If there are acceptance criteria for the work item, these are shown.
If you have not already started a session, start one now. The work item is automatically associated with the
current or new session.
4. All bugs, tasks, and test cases you create will automatically be linked to the current work item.
Explore work items from the Test & Feedback extension
1. Open the Explore work item page in the extension and search for the work item you want to explore.
You can search using the work item identifier or keywords in the work item title.
2. Select the work item in the search results and choose Explore selected work item.
3. The work item is now associated with the in-progress session. If there are acceptance criteria, these are
shown.
4. All bugs, tasks, and test cases you create will automatically be linked to the current work item.
Explore multiple work items in the same session
To explore another work item, you must first dissociate the current work item from the in-progress session.
1. Open the Explore work item page and choose Change.
2. Associate the new work item with the in-progress session as described above.
See Also
FAQs for manual testing
Use the Test & Feedback extension in Connected mode
Add findings to existing bugs with exploratory testing
Get insights across your exploratory testing sessions
Use the Test & Feedback extension in Standalone mode
Exploratory testing with Microsoft Test Manager
Overview of manual and exploratory testing
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
1. As you type the title for a new bug, in the background the extension searches for similar bugs that might be
related to the issue you've found and displays a link to the results. Choose this link to see the results that
have similar title keywords.
The form displays 0 Similar if it does not find any matching bugs. In this case, or if you don't see a "similar"
link, you can create a new bug containing your screenshots, notes, and videos as described in this topic.
2. If you see a bug you want to update, instead of creating a new one:
Select it in the list and choose Edit.
The extension appends all your screenshots, notes, and videos to the existing bug.
Save the updated bug.
3. If, instead, you decide not to update an existing bug, ignore the "similar" link and:
Choose the New bug link to return to the bug details form.
Enter the details for the new bug and save it as described in this topic.
4. Continue exploring your app, filing bugs and tasks, and creating test cases.
See Also
Use the Test & Feedback extension in Connected mode
Explore work items with exploratory testing
Get insights across your exploratory testing sessions
Use the Test & Feedback extension in Standalone mode
Exploratory testing with Microsoft Test Manager
Overview of manual and exploratory testing
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
From the VSTS or TFS Test hub by opening the Runs tab and choosing Recent exploratory
sessions.
2. Explore the Recent exploratory sessions page. It contains three main sections:
Summary view - shows a graphical breakdown of the work items explored, work items created, session
owners, and the total time for these sessions.
Pivot view - shows a collapsible nested and sortable list of items grouped in different ways.
Details view - shows the work item selected in the Pivot view or a summary of information about a
selection of items.
3. Get deep insights from Details view. Details view gives insights into the items selected in Pivot view.
Depending on the type of item you select, you see the work item as an editable form, or a series of charts.
Select a row in Pivot view to see a summary of all the related information in Details view. For example,
if you have pivoted the list based on sessions, select a session to see a summary of all the information
from the work items in just that session.
Select a child row in Pivot view to display the work item form for that individual item. For example, if
you have pivoted the list based on explored work items, expand a work item and select a child bug, task,
or test case to see the work item form for just that item.
Discover work items not yet explored
Use a query to explore the work items that users have not yet explored.
1. Create a shared query in VSTS or TFS that selects work items that can be explored using the Test &
Feedback extension, such as work items in the epic category, feature category, requirement category,
requirement-based suites, or test cases.
You must use a shared query. If this query returns a mix of supported and unsupported work items,
only those in supported categories will be displayed.
2. Use the View and Period filters to scope the view to the type of session (all sessions or just your own
sessions) and the time span (from the last 7 to the last 90 days). Then open the Query list and choose
Select query.
3. In the Query selector dialog, choose the shared query you created earlier.
4. View all the work items returned by the query in Summary view. You see a breakdown of explored and
unexplored work items, work items filed, sessions, and total session duration.
NOTE: This lightweight end-to-end flow is applicable only for web apps and by using VSTS or TFS 2017. To
get feedback for desktop apps, or for earlier versions of TFS, use the feedback flow described in this topic
about the Microsoft Feedback Client.
3. Type or select the names of the stakeholder(s) you want to send the request to, and optionally add any
instructions or notes that will help them provide meaningful feedback.
4. Choose Send to generate emails to all the selected stakeholders.
NOTE
Teams can request feedback from other team members, such as users having Basic access. Just add their names in the
feedback request form so that a Request feedback email is sent to them. Also see Can users with Basic access respond to
feedback requests?.
See also
Provide stakeholder feedback using the Test & Feedback extension
Voluntary stakeholder feedback using the Test & Feedback extension
Track stakeholder feedback using the Test & Feedback extension
Exploratory test and submit feedback directly from your browser
Overview of manual and exploratory testing
NOTE: This lightweight end-to-end flow is applicable only for web apps and by using VSTS or TFS 2017. To
get feedback for desktop apps, or for earlier versions of TFS, use the feedback flow described in this topic
about the Microsoft Feedback Client.
Stakeholders and other users can respond to feedback requests using the Test & Feedback extension in two ways:
From the link in a feedback request email
Directly from the Test & Feedback extension
Before you start, ensure you have installed the Test & Feedback extension. This is required in order to respond to
feedback requests.
Any user with a Stakeholder access can use the Test & Feedback extension in Stakeholder mode. This mode is
designed to allow the widest possible range of users to assist test teams by providing feedback.
If you are a Stakeholder, you see the Feedback requests page. Read the instructions (if any) in the
feedback form to understand how to give the feedback and what the requestor requires.
If you are a Basic user, you see the Explore work item traceability page showing details of the user story
on which feedback was requested, and the user acceptance criteria (if any).
3. Read any instructions in the email and this page to understand how to give the feedback, and on what
feature.
4. Open the application you need to provide feedback on and begin your feedback. For example, choose
Capture screenshot to take a screenshot.
You can use all the capabilities of the extension such as capturing screenshots, notes, and screen recordings.
For more details, see this topic.
Some browsers may not provide all the capture capabilities. See Which web browsers does the
extension support?
6. All your feedback captured is shown in the response form, bug, or task. Type a suitable title and, optionally,
select a star rating for the feature you've been testing.
7. Save your feedback. This create a work item in VSTS or TFS containing all your feedback.
8. Continue to capture more feedback if required. You can submit multiple feedback responses, bugs, and tasks
for the same feedback request.
9. If you are a Stakeholder:
When you are done providing feedback, go to the Feedback requests page and choose Feedback
requests.
In the pending feedback requests page, mark the feedback request as Completed.
4. Open the Feedback requests page to see all your feedback requests from the project or team you
connected to.
5. Select the feedback request you want to respond to and choose View feedback.
6. Read the instructions in the feedback request details page, then choose Provide feedback.
7. Capture and submit your feedback as shown above.
See also
Request stakeholder feedback using the Test & Feedback extension
Voluntary stakeholder feedback using the Test & Feedback extension
Track stakeholder feedback using the Test & Feedback extension
Exploratory test and submit feedback directly from your browser
Overview of manual and exploratory testing
NOTE: This lightweight end-to-end flow is applicable only for web apps and by using VSTS or TFS 2017. To
get feedback for desktop apps, or for earlier versions of TFS, use the feedback flow described in this topic about
the Microsoft Feedback Client.
3. Connect to the server and the project or team that is requesting feedback.
4. Start the exploratory testing session.
5. Open the application you want to provide feedback on and begin your feedback. For example, choose
Capture screenshot to take a screenshot.
You can use all the capabilities of the extension such as capturing screenshots, notes, and screen recordings.
Some browsers may not provide all of the capture capabilities. See Which web browsers does the
extension support?
You can optionally choose to create bugs and tasks when you submit your feedback. The process is the same
as described here.
7. All your feedback captured is shown in the response form. Type a suitable title and, optionally, select a star
rating for the feature you've been testing.
8. Save your feedback. This create a work item in VSTS or TFS containing all your feedback.
9. Continue to capture more feedback if required. You can submit multiple feedback responses, bugs, and tasks
for the same feedback request.
10. Choose the Stop icon to end your feedback session.
See also
Request stakeholder feedback using the Test & Feedback extension
Provide stakeholder feedback using the Test & Feedback extension
Track stakeholder feedback using the Test & Feedback extension
Exploratory test and submit feedback directly from your browser
Overview of manual and exploratory testing
NOTE: This lightweight end-to-end flow is applicable only for web apps and by using VSTS or TFS 2017. To
get feedback for desktop apps, or for earlier versions of TFS, use the feedback flow described in this topic about
the Microsoft Feedback Client.
2. In the list of shared queries, select Feedback. This query displays a list of all the feedback responses
received.
3. Open the response work item to see the details of the feedback.
See also
Request stakeholder feedback using the Test & Feedback extension
Provide stakeholder feedback using the Test & Feedback extension
Voluntary stakeholder feedback using the Test & Feedback extension
Exploratory test and submit feedback directly from your browser
Overview of manual and exploratory testing
7. Select the apps you want to monitor and the performance counters you want to view while your load test
runs.
The counters you selected are shown in the load test project.
8. Queue a load test run and view the performance data from Application Insights while your load test runs.
The data might take a few minutes to appear.
Application counters are correlated with user load so that you can understand which issues might cause
performance problems that you find.
The counter samples have a sampling rate of one minute irrespective of the sampling rate configured in
your load test project.
9. To do a more detailed analysis for any performance issue, or to do a quick root cause analysis, go to
Application Insights.
See also
FAQs for load testing
Load test with Visual Studio
Load test with VSTS
Load test with Azure portal
Tutorial: Run load tests before release
Analyze load test results using the Load Test Analyzer
VSTS
Before you start:
Create your Visual Studio Team Services (VSTS ) account, if you don't have one already.
To run a JMeter load test:
1. Sign in to your VSTS account (https://your-account-name.visualstudio.com ).
2. Go to the Load Test hub, open the + New menu and choose Apache JMeter test.
3. Enter your load test parameters. To run your test near to where your users are located, select a closer
location for your load test. Then start your test when you're ready.
For information about the scripts and supporting files used for JMeter web tests, see Build a Web Test
Plan on the Apache JMeter website.
4. As the test runs, you see live information about the progress of the test. You can stop the test by using the
Abort link on the toolbar.
5. When your test is done, look at the results to see how well your app performed. For example, you can see
an overview of your app's performance in the Summary tab. This tab shows all of the main metrics such as
average response time, user load, requests per second, failed requests, any errors that might have occurred,
and test usage.
The lower section of the Summary tab shows the settings used for the test, and details of the five slowest
requests during the test. If there are any transaction tests, the tab will also show the five slowest of these.
Use the icon above a column to sort the list based on the contents of that column.
6. Open the Charts tab to see a graphical representation of the test results over time. The charts show the
average performance, throughput, errors, and the results of each test request. Hover your mouse pointer
over a chart to see more details.
7. Open the Diagnostics tab to see detailed information such as a list of errors and status messages.
You can also use the icon in the Errors section of the Summary tab to go directly to the Diagnostics
tab.
8. Open the Logs tab to see a list of test runs. Choose the link in the Attachment column to download the
detailed log as a text file.
9. If you have a favorite listener that you use to analyze results in the JMeter IDE, download the test results in
.CSV format and the logs as a zip file from the Download Results link.
11. Now see how you can view and compare your load test runs.
See also
FAQs for load testing
Load test with Visual Studio
Load test with VSTS
Load test with Azure portal
Tutorial: Run load tests before release
Analyze load test results using the Load Test Analyzer
VSTS
You can record and then replay cloud-based load tests on your web app or website directly using an HTTP Archive
file and Visual Studio Team Services (VSTS ).
Before you start:
Create a VSTS account, if you don't have one already.
You can use your monthly free 20,000 virtual user minutes (VUM ) allowance to try it. If you want to use
load testing beyond this, you can set up billing for your VSTS account.
The example shown here uses the Google Chrome browser, but you can use the browser of your choice such
as Edge, Internet Explorer, or Firefox. For example, this video shows how to create an HTTP Archive with
different browsers and with Fiddler.
3. Exercise your user scenario. Enter the URL in the address bar and go through the sequence of actions a
typical user would follow. For example, in a retail store site, the user would browse for a product, enter a
product name in the search box, choose links of interest, view the product information, and (hopefully) place
an order.
As you go through these steps, you will see that all the traffic between the browser and the server is
shown in the Network tab of the developer tools.
4. After you have finished recording your user scenario, save the URLs as HTTP Archive (.har) file. In Chrome,
do this by opening the shortcut menu for the URL list and choosing Save as HAR with content. Enter a
name for the file and save it on your computer.
You can also create an HTTP Archive using tools other than a browser. For example, Fiddler is a popular
tool for viewing and troubleshooting traffic. Use Fiddler to record traffic in the same way and export
sessions as an HTTP Archive.
Create a load test using the HTTP Archive file
Follow these steps to create a load test in the VSTS web portal using an HTTP Archive (.har) file.
1. Sign in to your VSTS account (https://your-account-name.visualstudio.com ).
2. Go to the Load Test hub, open the + New menu and choose HTTP Archive based test.
3. In the Import HTTP Archive file dialog, select the .har file that you recorded in the earlier steps and
choose OK.
The HTTP Archive file is uploaded and read, the URLs are extracted, and all the details (the HTTP method,
headers, querystring parameters, form post parameters, and more) are displayed. You can add URLs and
edit the existing URLs to provide a friendly name for each request in the center Add URL pane. This will
help you easily identify each request.
The right-hand section of this page shows details of the selected request URL.
Some dynamic information such as ASP.NET viewstate, event validation, and more that varies from
session to session, and must be retained in order for a sequence of requests to succeed. These values
are automatically identified and extracted from a request and correlated in any subsequent requests
that use them.
4. Open the Settings tab to view and change any load test settings.
6. Choose the Run test link to execute your load test. A progress bar shows the current status of the test run.
7. As the load test runs, you see a rich set of metrics that indicate how your app is performing under load.
When the test is complete, you can explore the results.
For more information about the results and reports, see URL -based load testing with VSTS.
Troubleshooting
As you run a load test, requests are sent to your application in the sequence you specified. Ideally, you want a clean
run with all requests succeeding. However, requests may fail because of issues in your app or in your test. The load
test results view offers two sections to help you identify these errors: Diagnostics and Logs.
The Diagnostics section provides insights into any test errors and important status messages from the load test
service that occurred during the load test run. For failing requests, you can see the error type, the specific error
subtype, the number of times the failure occurred, and more.
This page also lists the requests that were tested, and the test you executed.
The Logs section gives you access to logs from all of the load-generating agents. If requests in your test are
failing, these logs will help you figure out what went wrong. The test logs are available in HTTP Archive (.har)
format, the same format as you used to record the user scenario and create the test. You can download these logs
and view them in a HAR viewer such as Fiddler, HAR Analyzer, or any other viewer that you prefer. You can then
inspect the details of each request and its response in order to troubleshoot any failures in your test.
This screenshot shows how you can import the log into Fiddler.
Export the test to Visual Studio
Sometimes, one or more requests will fail every time they are executed. If you have eliminated the obvious causes
such as correctness of the URL, the target URL not being reachable, or any application issues, requests may be
failing because the application uses dynamic parameters (such as session ID, cookies, values set in hidden fields
such as ASP.NET VIEWSTATE, and others) in these requests. When you create a test using an HTTP Archive, the
following cases are handled automatically when the test is executed:
Dynamic parameter values set in cookies.
Dynamic parameter values set in hidden fields, such as ASP.NET VIEWSTATE and EVENTVALIDATION.
However, dynamic parameters may also appear elsewhere in requests such as query strings or form post
collections. At present, the load test mechanism does not support these types of dynamic parameters. If you find
that this is the cause of your test failures, you can export and run the test in Visual Studio.
This export mechanism downloads a Visual Studio load test project containing the required web performance test
and load test for your application. See how to fix dynamic parameters using Visual Studio. Sean Lumley's blog
post has a detailed example of how dynamic parameters can be identified by inspecting the test and test results.
See also
FAQs for load testing
Load test with Visual Studio
Load test with Azure portal
Tutorial: Run load tests before release
Run Apache JMeter load tests with VSTS
Analyze load test results using the Load Test Analyzer
Help and support
Report any problems on Developer Community, make suggestions on UserVoice, get advice on Stack Overflow,
and get support via our Support page.
Test private and intranet apps using cloud-based load
testing
5/31/2018 • 9 min to read • Edit Online
VSTS
The Cloud-based Load Testing (CLT) service can be used for performance and scale testing of an app by
generating load from Azure. This type of load generation can only access and generate load on an Internet-located
or publicly accessible app. However, you may want to load test an app which is not publicly accessible, perhaps to:
Test an app that runs only on an internal network. In many large-scale organizations there are apps and
websites that cater for the needs of the whole organization and it is crucial to test it with peak load to discover
any performance or stress-related issues.
Test an app internally before releasing it on the Internet Before going public, organizations typically want
to ensure there are no performance issues that may affect the app under high user load.
Consider the following decision tree that shows six possible scenarios. This topic discusses only scenarios 3 and 4.
1. The default case; CLT auto-provisions agents. This is the default scenario for load testing using CLT when
the app has a publicly-available endpoint. The load testing service automatically provisions load agents (in
Azure) to simulate the user load. For more details, see Run URL -based load tests with VSTS.
2. Use an ARM template to deploy your own load agents. Solution 1 above provisions the agents within the
CLT service boundaries, so you don't have full control. If you want to access and control the load generation
agents, you can deploy them in your own Azure subscription using an ARM template. These machines will be
registered with the CLT service and can generate load. For more details, see Structure and syntax of ARM
templates.
3. Use an ARM template to deploy load agents in a VNet. If the app under test is within an Azure VNet, or if
there is ExpressRoute connectivity between the app's private network and Azure, you can use a pre-defined
ARM template deploy IaaS VMs in Azure in a specific VNet to act and have these VMs act as load agents. The
machines will be provisioned in your Azure subscription and registered against your VSTS account. The VNet
where you create these machines must have line-of-sight to the app so that the load generators can reach it.
4. Use an ARM template to deploy load agents with static IPs. If you don't have ExpressRoute connectivity
and want to test apps hosted on-premises, you can use an ARM template to deploy IaaS VMs in Azure that act
as load agents. Create these VMs with static IP addresses for which you can configure your firewall to allow
inbound traffic from the CLT service. The machines will be provisioned in your Azure subscription and
registered against your VSTS account.
5. Use cloud load agents on your own infrastructure. A simple PowerShell script can help you configure
physical or virtual machines as load agents. These machines are registered against your own VSTS account and
used for load generation. For more details, see Run cloud-based load tests using your own machines.
6. Use the Test Controller and Test Agents for on-premises testing on your own infrastructure. If you
want to test apps on-premises and have constraints such as not being able to store results in the cloud (perhaps
for regulatory compliance) you can use the Test Controller and Test Agents combination for load testing. This
requires you to use your own infrastructure for load generation and the results are stored in SQL Server. See
Configure test agents and test controllers for running load tests for details.
The following sections describe how you can provision load agents using Azure IaaS VMs (you will need an Azure
subscription). This approach is primarily useful when:
You want to test a private app that is not accessible through the CLT service or over the Internet.
You have your own Azure subscription and you want to use it for load testing. You can also use any Azure free
credits you may have.
Azure also allows you to spread the load testing across different geographical locations to measure response times
from different locations.
You must then fill in the parameters and choose the subscription, resource group, and location to suit your
scenario. VNet identification requires the resource group name.
Load test runs performed on your own load agent machines are not charged. You can confirm this by looking at
the status messages for the run.
Check the FAQs at the end of this topic for more details.
Get agents. Lists all the agents and their current status for a specified agent group. Example:
Delete an agent. Deletes the agent reference from the service. The agent must be in the offline state. The
agent group name is mandatory. Example:
FAQ
Q: How do the load agents communicate with CLT?
A: The load agents communicate with CLT using the HTTPS protocol. As these machines or VMs are inside the
user's private network (Azure or on-premises), they can reach the app under test directly. The results are pushed
back to the CLT service so that analysis occurs in similar way to other types of load test runs.
Q: How I am charged for this?
A: You will not incur load testing VUM charges for the runs where you deploy load agents on your premises or in
your own Azure subscription. However, you will be charged the applicable Azure VM costs.
Q: Can I use these machines for other purposes?
A: These machines can be used for other tasks as well, but we recommended not having anything running while a
load test run is in progress.
Q: Can I shut down the machines where I have configured the load test agent?
A: Yes, the machines can be shut down when not in use. The load test agent service will automatically start to
receive commands from CLT after the machine is restarted. If you are using the Azure ARM template to deploy
these agents, you can start or stop the VMs as required. You can also do this using a PowerShell script. See Stop
All VMs in Specified Azure Resource Group. You should delete the Azure resource group after you are done with
load testing, and re-create it later if required. See Manage Azure resources through portal
Q: I have proxy settings on my machines, will this work?
A: We support only default proxy scenario, when the proxy settings are controlled through your web browser and
it uses the current user's credentials to connect to the proxy server. In other cases, please see our help and support
forum.
Q: Where can I find the log files to debug issues?
A: The PowerShell script logs are stored in the logs subfolder where the PowerShell script resides. These logs are
also displayed in the PowerShell window. Run execution logs are in the %windir%\temp\CloudLoadTest\logs
folder.
Q: How can I discover the outgoing URLs so that I can allow them in my firewall settings?
A: There is a REST API for this. You first need to get the target AgentGroup Id using the REST API:
https://<VSTS account name>.vsclt.visualstudio.com/_apis/clt/agentgroups
The output is a list of strings where the first two inputs are the Azure Blob and Table service URLs. Another
outgoing URL is your Visual Studio account URL. Other than these three URLs, you also need to allow the URL
https://<VSTS account name>.vsclt.visualstudio.com .
See also
FAQs for load testing
Load test with Visual Studio
Load test with VSTS
Load test with Azure portal
Tutorial: Run load tests before release
Analyze load test results using the Load Test Analyzer
VSTS
When you run a cloud-based load test, the Cloud Load Test (CLT) service automatically provisions the necessary
machines (load agents) to generate the load on your application. After the load test run has completed, these
resources are removed. However, you can run load tests using your own machines, such as virtual machines in
Azure provisioned in your own subscription, or other virtual or physical machines located on-premises. This topic
shows two primary scenarios where such a configuration may be useful.
Terminology
Auto-provisioned machines. These are load-generating machines that are automatically provisioned by the
CLT service when a load test run request is received, and are also automatically removed when the load test run
has completed execution. When these machines are used, you are charged VUMs as applicable for your load
test run.
Self-provisioned machines. These are load-generating machines that you provision yourself (in your Azure
subscription or on-premises). These machines can be configured to register themselves against your VSTS
account and then they can run a cloud-based load test. This scenario is the focus of this topic.
Cloud load agent. This is the agent that works with the CLT service. This agent will be installed when you use
self-provisioned machines, and must be configured for your VSTS account. Once configured, it can then be
used for running a load test. The cloud-load agent is NOT the same as the Test Controller and Test Agent
combination that you may have used previously for running load tests or automated tests.
Scenarios
More control over agent machines. Sometimes you may need more control over the agent machines; for
example, to install custom software used during a load test run. Simple configuration is easily achieved using
deployment items and setup scripts on auto-provisioned agents. However, if you are installing some bulky
software or doing some time-consuming operation as part of the setup, you may want to do that only once and
reuse the machines over and over again. In addition, using your own machines means that you can set up and
remove the agents only when required, as opposed to the auto-provisioned agents that are removed
automatically after a test run,
Testing private apps and apps behind the firewall. The basic requirement of the cloud load testing service
is that the application endpoint is public or reachable from the cloud. Often this is not the case. The app that
you want to load test may be on-premises behind the firewall, or in a private VNet in Azure. Or you may be
developing new features that will only become publicly accessible when it's released. In this case, you need to
provision agents in the same network as your app (so that they can reach the app) and have them work with the
CLT service so that you can easily load test your app.
Solutions
Use machines located on-premises. You can provision as many machines as you need on-premises and run
a PowerShell script that installs the cloud load agents and configures these machines against your VSTS
account. For more details and to obtain the PowerShell script, see Testing private and intranet apps using cloud-
based load testing. The agents communicate with the CLT service only using HTTP (S ), so you don't need to
open any other ports.
Use virtual machines in Azure. While you can certainly adopt the same approach as above by provisioning
the machines and then running the PowerShell script to install and configure the load agents, a simpler
approach is to use Azure Resource Manager (ARM ) templates. You specify just a few inputs such as your VSTS
account, a PAT token for authentication, and the number of agent machines you need. The machines are
provisioned in your Azure subscription and you have complete control over them. Two ARM templates are
available in the Azure quick-start templates repository on GitHub:
A simple template with a dynamic IP option. This template provisions the number of machines you
specify and assigns them dynamic IP addresses. In this configuration, the application will still need to be
publicly reachable. You can install any software you may need after the machines are provisioned and
are ready, or you can customize the ARM template to install the necessary software as part of the
provisioning process.
A simple template with a static IP option. This template provisions the number of machines you specify
and assigns them static IP addresses. The machines receive the same addresses even after you shut
down and restart them later. In this configuration, you can allow traffic from these known IP addresses
through the firewall to reach an application behind it. The agents communicate with the CLT service
using only HTTP (S ), so you don't need to open any other ports.
A VNet-based ARM template. This template provisions the number of machines you specify in a specific
VNet that you have already set up in Azure. This VNet will be where your private app is hosted, and so
the load agents have a line-of-sight to reach your app.
For more information about using the ARM templates, see Test private and intranet applications using cloud-
based load testing.
FAQ
Q: How do I run JMeter tests using the self-provisioned option?
A: The cloud load agent is designed to also run JMeter tests. Use of self-provisioned agents for JMeter load tests
instead of the default auto-provisioned agent is under development.
Q: What is the cost of using self-provisioned agents? Will I be charged VUMs?
A: No. If you use self-provisioned agents on-premises, you bear the hardware cost. If you use self-provisioned
agents in Azure, the machines will be provisioned in your Azure subscription and you will be charged based on the
number of machines and the duration for which these VMs are running. CLT will not levy any VUM charges.
Q: Can I use the self-provisioned option when running load tests in a CI pipeline?
A: Yes. You can use the existing Azure Resource Group tasks from the build and release catalog with either of the
ARM templates to provision, start, and stop machines. The CLT tasks let you specify whether to use the auto-
provisioned agents or self-provisioned agents. A build template to help with this configuration is under
development.
Q: How do I automate the process of provisioning machines and shutting them down?
A: You can do this with using a build definition. In this context, think of the build (CI pipeline) as an automation
orchestrator rather than a system that does build. A build template to help with this configuration is under
development.
See also
FAQs for load testing
Load test with Visual Studio
Load test with VSTS
Load test with Azure portal
Tutorial: Run load tests before release
Analyze load test results using the Load Test Analyzer
VSTS
In some test scenarios you might need to set up the environment for the test, such as installing certificates or
custom software, and then clean up the environment afterwards (such as removing temporary files or folders
created during test execution). To do this you can include artifact deployments, setup, and cleanup scripts in the Test
Settings of your test solution.
Some examples are:
Install client certificates on agent machines; for example, when you are using HTTP client authentication the
web server authenticates the client using the client's public key certificate. You can use a setup script to
install the relevant certificate on the agent machines that run your load tests.
Install an Azure Management Certificate; for example, if your unit tests must perform operations such as
creating a new storage account or deploying an Azure website by using Windows Azure Management API.
You can use a setup script to install the certificate.
Install software on the machines running the load test agents in the cloud to collect data or metrics; for
example, installing Network Monitor to capture network traffic statistics. You can use a setup script to install
it on the agent machine and use a cleanup script to save the data to remote storage such as Azure Storage
(by using a SAS key).
Change settings on the agent machine before and after running the test; for example, you can use a setup
script and a cleanup script to modify and reset values such as registry entries or other settings as required.
3. Choose Add File, browse to the location of your certificate, and add it to the deployment items list.
4. Select the Setup and Cleanup Scripts tab in left-hand navigation bar.
5. Choose the ellipsis (...), browse to the location of the file or other artifact you want to deploy, and add it to
the deployment items list.
Script to import a certificate into the Trusted Root Certification Authorities certificate store on the test computer:
See CertMgr and Certutil for more information about using these utilities.
You can use the deployment options and a setup script to add .exe files or other files you want to deploy to the
machines running the agent, and use a setup script to install software on these machines. For example, a script to
install Web Deploy on an agent machine that runs load tests in the cloud, assuming you have added
WebDeploy_x64_en-US.msi to the deployment list:
%DeploymentDirectory%\WebDeploy_x64_en-US.msi /passive.
See also
Load test with Visual Studio
Load test with VSTS
Load test with Azure portal
Because the Test hub is a fully featured Test management solution which works across all platforms and with
all browsers, we recommend you use the Test hub over Microsoft Test Manager for all your test management
requirements. You can use Microsoft Test Manager to test your desktop applications by launching the
Microsoft Test Runner (client) from the Test hub.
This topic will help you understand why the Test hub is a more comprehensive solution for manual testing
compared to Microsoft Test Manager.
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
Test planning
Create and manage test plans and test suites for your teams with ease with Test hub. Export and share the test
plans and test suites with your team or assign multiple testers to execute tests. See below the comparison matrix to
know more about the features introduced in Test hub.
Comparison of test planning with the Test hub and test planning with MTM:
Create/Manage suites
Create/edit/assign configurations
* These capabilities are included as part of the upcoming version of the Test Case Explorer extension available from
Visual Studio Marketplace.
Test authoring
You can easily get started creating test cases right from your Kanban board in the Work hub. Easily add, view,
interact with, and execute tests from your Kanban cards, and create multiple test cases using a grid in the Test hub.
Create shared parameters and use them in multiple test cases for data driven testing.
Comparison of test authoring with the Test hub and test authoring with MTM:
Test execution
Test your web apps and your desktop apps.
Web apps
The Test hub provides a browser based Test Runner you can use to test your web apps; for example, by marking
test steps and test outcomes as pass or fail, and collecting diagnostic information such as system information,
image action logs, screen recordings and screen captures during your tests.
Desktop apps
You can use the browser based Test Runner for running tests on desktop apps if you only want to mark test steps
and test outcomes as pass or fail, or collect screen recordings during your tests. If you need other data collection
capabilities when testing desktop apps, you can use the Microsoft Test Runner client that is part of Microsoft Test
Manager. You can launch Microsoft Test Runner client directly from the Test hub.
Comparison of test execution with web based Test Runner and test execution with Microsoft Test
Runner (client):
WEB-BASED TEST RUNNER FOR TESTING CLIENT-BASED TEST RUNNER FOR TESTING
TEST EXECUTION CAPABILITY WEB APPS DESKTOP APPS
Verify bugs
Connect to a machine in an
environment
* The web-based Test Runner currently does not support Action Recording (fast-forward test steps) or Advanced
Data collection (code coverage, IntelliTrace, and test impact) during your tests. You can use the Microsoft Test
Runner client, launched from the Test hub, for these requirements.
Test tracking
You can easily track your manual testing results using your chosen light-weight chart types, and pin them to your
dashboard to quickly analyze the test results. View test case result history across test suites and test plans easily by
using the right-hand pane in the Test plans tab of the Test hub. You can also select a retention policy to specify
how long you want to keep your manual testing results.
Comparison of test result tracking with the Test hub and test result tracking with MTM:
Exploratory Testing
Use the light weight Test & Feedback browser extension to perform exploratory testing on your web applications.
You can collect rich diagnostic data such as screen captures, screen recording, and image action logs using this
extension. The extension also has the capability to capture page load data for your web applications. In the Test
hub you can view completed exploratory testing sessions and derive meaningful insights at team or individual
level, and for a specific period.
To explore your desktop applications, you can use the Exploratory Test Runner client in Microsoft Test Manager by
launching it from the Test hub.
Comparison of exploratory testing with the Test & Feedback extension and exploratory testing with
Exploratory runner (client):
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
If you don't see your project, choose Add server and enter the URL of your VSTS or TFS server.
3. Create a new test plan, unless there's already a plan you want to use. Typically, you create a separate test
plan for each sprint.
4. Select a plan.
If you want to connect to a different project or test plan later, choose Home.
Signed in with the wrong user name? Choose Home , Change project, Sign out.
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
TIP You can also use the web portal to plan manual tests. It is generally more convenient for creating test
cases.
4. Add the steps to perform during the test. Don't forget to include the expected results.
To add multiple lines in a step, press ALT + Enter.
Now that you've defined a manual test case, you can run it from MTM and keep the results in TFS.
Drag test cases from one suite to another, or cut and paste.
CTRL + drag or copy and paste to make the same test case appear in more than one suite.
These operations don't affect the test case itself. Suites contain links to test cases, and it's the links that
you're moving or copying. For the same reason, removing a test case from a suite doesn't delete the test
case from TFS.
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
The web portal or Microsoft Test Runner? Use the web-based test runner in the Test hub when you want
to test web applications, and Microsoft Test Runner for desktop applications. You can launch Microsoft Test
Runner from the Test hub instead of using Microsoft Test Manager.
TIP If you are already looking at a test case in the web portal, you can start Test Runner directly from
there by choosing Run in Client.
Test Runner appears at the side of the screen. It will stay there while you work with your application.
3. Create an action recording so that you can quickly repeat the test later.
4. Follow the steps in the test. Mark each step as either Passed or Failed. When a step fails, add a comment
to describe what was wrong. You can attach screenshots, too.
If you have to attend to something else, Pause the test. You don't want your emails or password included
in the recording.
5. Create a bug if you find a problem.
See Also
Repeat a test with different data
Test configurations: specifying test platforms
Record and play back manual tests
Collect more diagnostic data
Testing Microsoft Store apps
If you have multiple build configurations, the test assemblies to run the automated tests are searched for
recursively from the root directory of the build drop folder. If it is important which assemblies are selected
when you run your automated tests, you should use Run with options to specify the build configuration.
For more information about build definitions and build quality, see Continuous integration on any
platform.
If you select a different environment, it must contain the same roles that you selected in the test settings
that you use.
5. To run the automated test without changing any options, right-click the test and then choose Run. The
Analyze Test Runs activity is displayed. It shows the progress of the test run that contains this test.
You can run multiple automated tests by selecting multiple tests, or you can select to run a whole suite
of tests. To run a suite, right-click the test suite and then choose Run.
If, from your analysis, you determine that there is a bug, you can create a bug from this view.
9. To save these changes for this test run, choose Save in the toolbar.
See Also
Run automated tests from test plans in the Test hub
Test with unified agents and phases
Continuous testing scenarios and capabilities
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
4. After you finish your test run, choose End Test. This makes sure the recording assigns your actions to the
correct steps.
Caution: All your keystrokes and gestures might be recorded, including passwords, emails, chat messages, and
other sensitive data.
Delete mistakes
Open the editing panel at the bottom of the test runner. You can delete actions there:
Alternatively, you can run the test again and choose Overwrite action recording.
Keep or re -record shared steps
If you come to a sequence of shared steps, you might have already recorded them in an earlier test case. You can
either keep the earlier recording or record them now, like this:
You have to indicate when you finish recording the shared steps:
Parameter values aren't bound if they're not typed as text, for example, when values are selected instead. When
you play the recording back, you'll have to manually perform that step.
You can play the whole test, or play individual steps. The test runner will replay the keystrokes and mouse
actions that you recorded.
2. You have to check the result of each step. The recording doesn't check the outputs.
See Also
FAQs for recording and playing back manual tests
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
Test Runner appears at the side of the screen. It will stay there while you work with your application.
4. Get your app ready to start testing. For example, if it's a website, start the server.
5. When you're ready, start recording.
6. While you work with the application, add comments and screenshots in the Test Runner window.
Double-click a screenshot if you want to edit it.
7. Create a bug if you find a problem. The bug will automatically include a list of your actions and comments.
Give your test run a title that expresses the result, such as "Failed to open account" or "Successfully created
an order."
11. Review the exploratory tests in this plan to see how well the sprint is progressing.
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
The steps you selected are replaced with a link to the new shared steps work item:
See also
FAQs for manual testing
Help and support
Report any problems on Developer Community, make suggestions on UserVoice, get advice on Stack Overflow,
and get support via our Support page.
Copying and cloning test suites and test cases
5/31/2018 • 6 min to read • Edit Online
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
1. On the context menu for the old test plan, choose Clone plan.
2. In the dialog, select the suites you want to copy and set the new area and iteration paths.
Check Clone Requirements if you want to make new user stories or requirements that you will maintain
separately. For example:
If you plan to merge the two branches eventually, you'll want to keep the same requirements for
functionality that has already been implemented and tested. Don't check Clone Requirements.
If you plan to diverge into two similar but separate applications, you might want to change the user
stories of one without changing the stories of the other. Check Clone Requirements to create an
independent set of requirements for the new test cases.
3. Update any query-based suites that you copied to use the new area and iteration paths.
4. Specify a build in the destination test plan if you have cloned automated test cases.
What Gets Cloned?
When you clone a test suite, the following objects are copied from the source test plan to the destination test plan:
Test results
Test runs and exploratory test sessions Because test runs are applicable only to
the source test plan, they are not
copied.
Requirements work items (product with /clonerequirements Requirements work items that are
backlog items or user stories) associated with a cloned requirements-
based suite are cloned.
Bug work items with /clonerequirements Cloned in a project that uses the Scrum
process template, or any project in
with /clonerequirements which the Bug work item type is in the
Requirements work item category.
cd %VS110COMNTOOLS%..\IDE
Parameters:
Server, Collection, Project: The names of your team foundation server, project collection, and project.
destinationProject : Specify this if the destination test suite is in a different project. It must be in the same
project collection. You must specify override field values for "Iteration Path" and "Area Path" .
suiteIdand destinationSuiteId : The ID of the suite to be copied, and the ID of the suite into which the
new copy will be added. If you want to copy a whole test plan, use the ID of the suite at the root of the test
plan.
The ID of a suite is displayed in the details pane when you select it in the test plan.
You can also get a list of suites by using tcm suites /list .
/clonerequirements: Clone requirements work items that are attached to requirements-based test suites. If
you omit this parameter, requirements-based test suites are converted to static suites.
/overridefield:"field name"="new value" : Change the value of a field in each cloned work item. You can use
multiple occurrences of this parameter to change as many fields as you want.
Examples:
Use Microsoft Test Manager to specify test configurations. But you can still run the tests either with the web portal
or with Microsoft Test Manager.
Requirements
Visual Studio Enterprise or Visual Studio Test Professional
Don't see the configurations you want? Choose All configurations. If you still don't see what you need, learn how
to define your own configurations.
I have a test case that appears in several test plans and test suites. Do I have to set the configurations for
each of these test points?
Yes. The same test case can have different configuration settings in different test suites and test plans.
Set up a testing platform for a particular configuration, and then sort the list to show the tests to run on that
configuration.
When you run a test, a reminder of the required configuration appears on the Test Runner window.
Test Runner doesn't verify that you're actually running on the specified configuration. However, if you use Microsoft
Test Manager, system information is stored in the test log.
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
- Operating system version and other system information. (Use default test settings.)
- Your keystrokes and gestures.
- Screenshots, recorded automatically while you work. Microsoft Test Manager has to be installed on the machine
where you run the tests, or on a machine connected to a
device where the test runs.
+ Use test settings when you perform the tests with Microsoft
Test Manager.
Data collected from your client or desktop application:
Test settings files configure diagnostic data adapters. You can
- Event logs choose a test settings file when you run tests, or you can set
- IntelliTrace a default test settings file for your test plan.
- Video recording of the desktop
- Test impact analysis. This allows you to choose tests based
on changes since a previous build.
DATA YOU CAN COLLECT HOW
1. Event logs.
2. IntelliTrace
3. Test impact
4. Virtual machine snapshots of the servers, if you are using
an SCVMM lab environment
This sets the default selection for performing tests in this test plan. You can override the selection when you
perform individual test runs.
3. Give the test settings file a name.
4. Choose the lab environment you want to use for your tests. If you aren't using a lab environment, choose
Local.
The Local role is the client machine on which you'll perform the tests.
Action Log: Allows you to record the actions you perform Record and play back manual tests.
during your test, so that you can play them back rapidly on a
subsequent occasion. The actions are also recorded as text Not all gestures and applications are recorded.
descriptions in any bug report that you create.
ASP.NET Client Proxy for IntelliTrace and Test Impact Select this adapter in a web client role. It is required if you are
testing an ASP.NET application, and you want to collect Test
Impact or Intellisense data on the web server role.
Event log Choose Configure to select the types of events you want.
Collects events that your application wrote to the event logs. Your application has to write events using WriteEntry.
IntelliTrace: Generates an .itrace file that is linked to any bug Using IntelliTrace.
that you create. From this IntelliTrace file, the local session can
be simulated on another computer.
Test impact: Enables the Recommended Tests feature in If you are testing an ASP.NET application:
Testing Center, Track. This determines which tests are affected
by the changes since a previous build, based on code 1. On the role where the IIS server will run, enable Test
coverage. Impact and then choose Configure, Advanced, ASP.NET.
2. In the web client role, enable ASP.NET Client Proxy for
IntelliTrace and Test Impact
Video Recorder records the desktop in real time while you To record audio, choose Configure.
work.
To use the features described in this topic you must have either a Visual Studio Enterprise subscription, or have
installed the Test Manager extension available from Visual Studio Marketplace.
By default, port 6905 is used by Microsoft Test Manager to communicate with remote devices. If you want
to use a different port, enter the remote device as deviceName:port. For example, mySlateDevice1:8001 . You
must also change the port on the remote device by opening the service configuration file
mttaservice.exe.config in the Visual Studio installation folder.
4. Choose the Test link to verify that Microsoft Test Manager can communicate with the remote device.
Install your Microsoft Store app
1. Choose Install Microsoft Store App, and then enter the path and name of the .appx file for the Microsoft
Store app that you want to install.
2. Follow the steps in the installation wizard.
FEATURE SUPPORT
Security
Verify that the share location where the .appx file and certificates are stored is properly secured.
Q: Can I copy, clone, and move test plans and test suites?
A: Yes, install the Test Case Explorer extension from Marketplace.
Q: Can I export the test plan to share or review offline?
A: Yes, you can export test plans, test suites, and test cases. Select the details that you want in the report. Then
email or print this report for review.
Change the test case fields in the report by adding or removing columns from the list view of the test suite.
Q: When I export a test plan, can I just view the data or copy it to a Word document?
A: Yes, choose Print in the Export dialog box, then choose Cancel in the Print dialog box. This displays the data in
the report. Select all the text, then copy and paste it into a Word document, if you want. All the formatting in the
report is retained.
Q: When I export a test plan, can I customize the report?
A: You can only do this if you are using an on-premises Team Foundation Server. You can edit the XSLT file.
Q: Can I track changes to test plans and test suites that I create with VSTS?
A: Yes, you can track changes to test plans and test suites. Open the work item for the test plan or test suite, then
view the work item history.
For test suites, other actions are tracked in the Test Suite Audit field. For example, adding and removing test cases
from a test suite are tracked in this field.
Switch between Grid and List views using the View menu at the right of the window.
Note: Do not use the Team plugin for Excel to add or update test case work items. Excel cannot parse the
format used to store test steps, and in some cases this may affect the formatting of the test case work items.
Or, you can filter and sort the test cases in list view. Then select just the ones that you want to bulk edit using the
grid.
To return to the test suite view, switch the view from Grid back to List.
Q: Can I copy, clone, and move test plans and test suites?
A: Yes, install the Test Case Explorer extension from Marketplace.
Q: Can I copy test cases and test steps from an existing Excel worksheet?
A: Yes, copy the columns from Excel that you want to use for the title, action, and expected results fields. No
column formatting, other than multiline, is copied from the worksheet. Paste these columns into the grid view, edit
if necessary, and save them. (This is supported only with Internet Explorer and Chrome browsers.)
Q: Can I tag test cases so that I can see only tests with specific tags?
A: Yes, you can tag test cases in a suite with any tag that you want. For example, tag all the tests related to login so
that you can rerun these tests if a bug is fixed for the login page. Then you can filter on that tag from the Test hub.
You can add and edit tags when you edit a test case, or bulk edit tags in the grid view. You can also create suites
based on queries when you use tags.
Q: Can I share test steps between test cases?
A: Yes, choose the steps that you want to share. Find out more about sharing test steps.
Q: Can I add parameters to a test case so it can run multiple times with different data?
A: Yes, choose a test step, and then add the parameter. Find out more about repeating test steps with different data.
Each shared parameter set is a work item. On the Properties tab, you can view or make changes to this work item.
For example, you can assign owners and track changes.
Q: Can I import parameter values from an Excel spreadsheet to my shared parameter sets?
A: Yes, copy the data from your Excel spreadsheet and paste it into your shared parameters grid. You can also copy
the data from your grid back into Excel, if necessary.
Q: How can I find out if a test case was added to other test suites?
A: Select a test case, then view the test suites details. The Associated test suites pane shows you any test suite for
any test plan that contains this test case. This includes all projects.
Click the associated test suite to view it. To view the project and the test plan for that test suite, move your pointer
over the test suite.
Q: What happens when I delete a test case from a requirement-based test suite?
A: The test case still exists in your project, but the test case is removed from the test suite. Also, it's no longer linked
to the backlog item for that test suite.
Q: Why do I see the wrong test suite and tests when I click 'View Tests' from the notification email about tests
that are assigned to me?
A: This might happen if you were prompted to enter sign-in credentials for VSTS when you clicked this link.
Without signing out of VSTS, click 'View Tests' again to see the correct test suite and tests.
Any bug filed during the run will automatically be associated with the selected build, and the test outcome will be
published against that build.
Q: Can I fix my test steps while I'm running a test?
A: Yes, if you have the Test Manager for VSTS. You can insert, move, or delete steps. Or you can edit the text itself.
Use the edit icon next to the test step number to do this.
Q: How is data shown in the charts for test cases that are in multiple test suites?
A: For test case charts, if a test case has been added to multiple test suites in a plan then it's only counted once. For
test result charts, each instance of a test that is run is counted for each of the test suites separately.
Q: Who can create charts?
A: You need at least a Basic access to create charts.
Q: How can I edit or delete a chart?
A: Select the option you want from the chart's context menu.
Q: How do I control how long I keep my test data?
A: Learn more here.
General
Go to related topic >
Pricing for VSTS features
Q: How do I learn more about Cloud-based Load Testing?
A: Watch this video, or check out the Cloud-based Load Testing blog.
https://channel9.msdn.com/Events/Visual-Studio/Launch-2013/QE103/player
Q: Do I need anything to load test in the cloud with Visual Studio Ultimate 2013?
A: Yes, you'll need Update 4 or Update 5 installed. Download this version.
Q: My Visual Studio trial period ended, but I still want to run load tests.
A: To continue load testing after the trial, you'll need an active and valid Visual Studio Enterprise 2017 or 2015
license, or a Visual Studio Ultimate 2013 license. Learn more about licensing.
Q: Can I run cloud-based load tests on any app, even behind a firewall?
A: Yes, you can load test apps or sites that are only available to your company, such as internal or pre-release apps,
staging or preproduction deployments. To learn more, see Testing private and intranet applications using cloud-
based load testing.
Or, you can run a load test locally using Visual Studio.
Q: Can I run cloud-based load tests on my on-premises servers or on an Azure Virtual Machine?
A: Yes, several scenarios are supported. To learn more, see Run cloud-based load tests using your own machines.
Q: What are virtual users?
A: Virtual users create load by accessing your app or web site all at the same time during your test run. That way,
you can test performance under more realistic or projected conditions. Virtual users are simulated by test agents.
Q: What are test agents? How do they relate to my test run?
A: Test agents are computing resources, like CPU, memory, and network, that generate load by simulating virtual
users. Test agents use agent cores to create virtual users. Each core creates at least 1 virtual user.
For load test runs in Visual Studio Team Services (VSTS ) with the Visual Studio IDE, you can specify the number of
cores to use. For example, if you get errors when you run your test, you might have to increase the number of
cores.
Otherwise, your tests and the number of virtual users that you specify determine how many cores and agents are
used.
Q: Where do I specify the number of cores for runs in VSTS with the Visual Studio IDE?
A: You can do that here:
What do the values mean?
CORES AGENTS
The maximum number of cores for each test run is 200. If your test run needs more cores, you can run up to 10
load tests at the same time.
The minimum number of virtual users per agent core is 1. If your load test requires more cores, contact
vsoloadtest@microsoft.com.
The number of agents also depends on your text mix (web performance test or unit test). If you have only web
performance tests, we suggest using between 600 and 2,500 virtual users for every two cores. If you have unit
tests, the agent count depends on what your unit tests do. This means you will have to test if you have enough
agents by running a shorter duration load test run or use goal-based load testing.
Q: What are virtual user minutes (VUMs)? How many minutes will my load test use?
A: If your test run uses 25 or more virtual users per core, then VUMs = (max virtual user load for your test run) *
(test run duration in minutes).
If your test run uses fewer than 25 users per core, then VUMs = (number of cores) * (25 virtual users per core) *
(test run duration in minutes).
The minimum values used to calculate VUMs are 25 virtual users and 1 minute. If your test run values are smaller
than the minimum values, then those values are rounded up to meet the minimums. For example, if your test run
specifies 20 virtual users for 30 seconds, then your test run will actually run with 25 virtual users for 1 minute = 25
VUMs, not 15 VUMs.
Also, test run duration is in minutes, not seconds. For example, if your test run duration is 5 minutes and 15
seconds, then that duration is rounded up to 6 minutes.
A minimum of 250 virtual user minutes, including the warm-up period, is deducted from your account for:
Completed runs, based on the full duration of the run
Aborted runs, based on the elapsed run duration
For runs that end in an error state, no virtual user minutes will be deducted from your account.
Note that there is an additional charge for resource retention.
Pricing for VSTS features
Q: I'm running load tests using test iterations. How is load test duration determined?
A: When load tests are configured to run using test iterations, the test duration cannot be determined when the test
run starts. In such cases, the load test run assumes the maximum duration of 48 hours. If the test iterations
complete in this time, the duration used for calculating the virtual user minutes consumed by your load test is the
actual duration for which the test ran. If the test iterations do not complete in 48 hours, the load test will be stopped
after 48 hours and virtual user minutes will be charged accordingly.
Q: Are there any limits when running the cloud-based load tests?
A: Yes. Based on where you're running the test, each test run duration limit is:
Visual Studio IDE: 48 hours
VSTS Load test hub:
URL -based load tests: 48 hours
JMeter load tests: 4 hours
Azure portal: 1 hour
Q: Do other load tests run on the same virtual machines that host my agents?
A: No, the virtual machines that host your agents host only one load test run.
Q: Are there load test features that aren't supported when you run load tests in the cloud?
A: These features aren't currently supported:
Network mix property
Agent to Use in test settings - use the core count property instead
SQL Trace properties in run settings
IP switching
Q: Can I speed up my load testing cycle by retaining the resources the tests use?
A: Yes, you can reduce the delay while your load test starts each time during a typical test > fix > retest scenario by
retaining the resources for an appropriate period after each test completes, instead of having to wait for them to be
acquired and provisioned for each test run. In Visual Studio Update 3 and later, specify the retention time in your
run settings properties.
In earlier versions of Visual Studio, add a context parameter named ResourcesRetentionTimeInMinutes to your
run settings.
Note:
The maximum resource retention period is 4 hours (240 minutes).
The resources will be released after the specified period if you do not start another test during that period.
When you start another test, the resource retention period you specify in that test will be applied -
effectively allowing you to extend the retention period. You can specify a different retention period each time
you start a test.
There a small additional charge applied when you use this feature. In addition to the usual VUMs that your
load test consumes, a surcharge of 5 VUMs per core is applied for the duration of the run. So if you retain
20 cores for 10 minutes, an additional 1000 VUMs (5 x 20 x 10) will be charged. The status messages
display this information.
Resource retention is not available for Apache JMeter tests at the present time.
For more details, see this blog post.
Q: How do I delete a load test?
A: Currently, only test runs can be deleted, and only by the user that created that test run. The load test itself cannot
be deleted because the data resides at the account level.
Free 1 40
Shared 30 1,000
Basic/Standard/Premium 60 20,000
Q: Where can I check how much test time I've used so far?
A: You can check this in the Azure Portal. For details, see Manage pricing and data volume in Application Insights.
Q: What is the default option and are my existing tests impacted?
A: The default option for performance load tests is a manual test - the same as before the multiple URL test option
was added to the portal. Your existing tests continue to use the configured URL and will work as before.
Q: What features not supported in the Visual Studio Web Test file?
A: At present this feature does not support Web Test plug-ins, data sources, and extraction rules. You must edit
your Web Test file to remove these. We hope to add support for these features in future updates.
Q: Does it support any other Web Test file formats?
A: At present only Visual Studio Web Test format files are supported. We'd be pleased to hear from you if you need
support for other file formats. Email us at vsoloadtest@microsoft.com.
Q: What else can I do with a VSTS account?
A: To find your new account, go to https://{accountname}.visualstudio.com . Share your code, build, test, track work,
and ship software - all in the cloud using any tool or language. Learn more about how VSTS features and services
help your team collaborate more easily and deploy continuously.
Q: Can I get more detailed profiler information?
A: Yes, see Profiling live Azure web apps with Application Insights.
Setting up tests
Go to related topic >
Q: Can I have other test types, besides web performance tests, in a load test mix?
A: Yes, you can include unit tests and coded web tests, but not coded UI tests.
Q: How long do I have to wait until I can run my load test after creating a VSTS account?
A: It can take between 5 seconds to 3 hours until you get permissions to run the load test in the cloud. If you
previously created your VSTS account, you might be able to run the load test right away.
Q: How do I provide different values to the same test?
A: Use a .csv file or an Excel spreadsheet. Using SQL Server is currently not supported. Learn how to supply values
to your test.
Q: Help, I'm having problems with my agents!
A: You must have at least 1 virtual user per core. If you're getting status messages that an agent stopped working
due to load, or if the downloaded report shows high CPU use for an agent, try increasing the number of agents
that you're using.
If you need more help, contact vsoloadtest@microsoft.com
Q: Where are the test agents used for my load test runs located?
A: When you set up your load test run, you can select the test agent location from any supported Azure datacenter,
starting with Visual Studio Ultimate 2013 Update 5 and Visual Studio Enterprise 2015. After your run finishes,
your results are stored in the same location as your VSTS account.
If you're using an earlier version of Visual Studio, the agent location is based on the location that you chose when
you created your VSTS account.
VSTS ACCOUNT REGION TEST AGENT AZURE DATACENTER
Now you can use one settings file to run your tests locally and the other settings file to run your load tests in the
cloud. To switch between them, open the file's shortcut menu, then select the test settings file that you want to use.
Q: How do I install certificates or software on agents that run my load tests in the cloud?
A: In the test settings, you can use deployment options and a setup script. In the Deployment window, add the .exe
or other files that you want to deploy on the agents. To install those files on the agents, use the setup script.
All the items deployed on the agents are copied to a directory on the agent. You can access the directory location
by using %DeploymentDirectory% in the setup and cleanup script. For example, if you want to install WebDeploy
on the agent machine, add WebDeploy_x64_en-US.msi to Deployment window. The setup.cmd will look like this:
%DeploymentDirectory%\WebDeploy_x64_en-US.msi /passive
<dependentAssembly>
<assemblyIdentity name="Microsoft.VisualStudio.QualityTools.LoadTest"
publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="8.0.0.0-14.0.0.0" newVersion="12.0.0.0"/>
</dependentAssembly>
Application Insights
Go to related topic >
Q: Can I get more detailed profiler information?
A: Yes, see Profiling live Azure web apps with Application Insights.
Q: Can I view data from other app monitoring tools when load testing in the cloud?
A: No.
Q: Can I increase how often data is collected?
A: No, this is currently a fixed frequency of one minute.
Q: I don't see any counters even after waiting a few minutes. What's wrong?
A: Go to Application Insights and check that you can view performance data for your app there. If you see data
collected there, report your issue to vsoloadtest@microsoft.com.
Q: Why do I get an "Unable to connect to VSTS due to network failure" error when trying to add apps using the
Get Performance Data from Application Insights menu command?
A: This can happen because:
No apps are configured to push analytics data to Application Insights. See Get started with Visual Studio
Application Insights. Also check that you can see the apps in Application Insights in the Azure portal, as
shown here:
The Azure Resource Manager access token has expired. The token is valid for 12 hours in the context of
VSTS. Sign out of your VSTS account and then sign in again to refresh the token.
Azure Active Directory is not enabled for your VSTS account. See Access VSTS with Azure Active Directory.
If none of the above works, contact us at vsoloadtest@microsoft.com.
Troubleshooting
Q: What do I do if Visual Studio stops responding when I try run a load test in the cloud?
A: To resolve this issue, see Known issues with load testing.
Q: How do I record a web performance test with Internet Explorer 11?
A: If the web test recorder is not active when you try and record your web test with Internet Explorer 11, see Using
Internet Explorer 11 and not able to record a web performance test to resolve the issue.
Q: How do I view errors and warnings that happen when my load test is running in the cloud?
A: Status messages and test errors are reported while your load test runs. Status messages give you details about
the load test run itself, such as when a connection to the results database is lost. Test errors relate to the test. View
both these messages from the Details tab on the progress graphs.
Q: I get an error when I try to import downloaded test results. What do I do?
A: If the error states that the connection's current state is closed, you can set the amount of time that a connection
waits before timing out.
Set the ConnectTimeout or Connection Timeout keywords in the connection string. Do not set a value of 0 as a
timeout in a ConnectionString because the connection will keep trying to connect indefinitely.
Q: Why can't I use more than 250 virtual users or plug-ins when I have Visual Studio Ultimate or Visual Studio
Enterprise?
A: If this happens, you must take the Visual Studio product key from your MSDN subscription and use the
"Change my Product License" option on the Product Information page. You must do this on every machine where
you want to run load tests using VSTS. To get the product key, visit this site.
Q: Why did the REST API calls that I use stop working?
A: Starting on 26th November 2014, you must add the version information to your REST API calls. If your call fails
with a VssVersionNotSpecifiedException exception, you must include ?api-version=1.0-preview.1 in your
REST API calls. To do this, see Get started with the REST APIs.
Q: I noticed that user code fails to execute if it depends on the test names. Are test names changed when run
against the service?
A: When the test runs using VSTS, test names in load tests are converted to lower case. Any string match done on
a test name by user code should ignore the case or convert test names to lower case.
Q: How do I enable client-side logs to help troubleshoot issues with load tests run in the cloud?
A: Edit devenv.exe.config with a text editor. You can usually find file at:
"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE"
1. Add this line inside the <appSettings< section:
<system.diagnostics>
<trace autoflush="true" indentsize="4">
<listeners>
<add name="myListener" type="System.Diagnostics.TextWriterTraceListener"
initializeData="d:\VSTestHost.log"/>
</listeners>
</trace>
<switches>
<!-- You must use integral values for "value": 0 = off, 1 = error, 2 = warn, 3 = info, 4 = verbose.--
>
<add name="EqtTraceLevel" value="4" />
</switches>
</system.diagnostics>
3. Restart Visual Studio and reproduce the issue. You can then review the log file or share it with Support. You
can find the log file at %Temp%\ELSClient\ .
Q: Why don't I see the individual timing values in the Load Tests Results Store?
A: For Visual Studio 2013 Update 4, Visual Studio Enterprise 2015, and later versions, the default value for the
TimingDetailsStorage property was changed from AllIndividualDetails to None. If you want to collect the
individual timings, you must specifically set TimingDetailsStorage property to be AllIndividualDetails. See Load
Test Run Settings Properties.
Errors
Q: My test run failed with these errors. What do I do?
A: If you get one of these errors:
VS1550064
VS1550072
VS1550078
VS1550081
VS1550082
VS1550083
Contact VSTS Support. You will have to give them your test run id.
Q: My run was aborted because the .loadtest xml file could not be parsed. What do I do?
A: You might get these errors if you manually edit the .loadtest xml file:
VS1550084
Open the file and revert any changes that you added. Rerun the load test. The run should complete successfully.
Q: Too many applications or counters were selected to run for my load test. What do I do?
A: You might get these errors if you manually edit the .loadtest xml file:
VS1550026
VS1550027
Open the file and revert any changes that you added. Rerun the load test. The run should complete successfully.
Q: No active load test settings were found in my load test. What do I do?
A: You might get this error if you close the load test wizard without completing it:
VS1550030
To fix this problem, create another load test. Delete the failed test run.
Q: My load test got an error when it started or was aborted during the run. What do I do?
A: Generally, these problems happen due to issues with the cloud-based load testing service. Just try and run your
load test again. If these problems still happen, contact VSTS support. You will have to give them your test run id.
Q: Where can I find information about other errors?
A: See Visual Studio Cloud Load Testing error codes to find more details about other errors and their resolutions,
where applicable.
You don't have an active account or license. Check with your account administrator that you're a member
of the account and have an active, valid license. See Assign
licenses to users for details.
Your VSTS account is connected to the Azure Active Directory. When your VSTS account is connected to a directory that is
associated with an Office 365 or Microsoft Azure subscription,
only members in the directory can access the account.
You can't switch between different organizational accounts. If you work with several VSTS accounts that connect to
different directories, such as accounts that are created from
the Microsoft Azure Preview Portal, the sign-out function
might not work as expected. For example, you can't switch
between different organizational accounts to connect to
multiple accounts that are linked to directory tenants.
You want to log into VSTS from Visual Studio using a different See Connect to team projects, Change accounts when you
account. connect to VSTS.
You receive this error when you try to connect to an on-premises TFS from your client computer
If you determine that you're receiving this error from one computer but not others, or others aren't receiving this
error, then check the problem resolutions outlined below.
PROBLEM RESOLUTION
Your password has expired. Verify that you typed your user account and password
correctly, and that your password hasn't expired.
You've entered an incorrect server URL. Verify that you have typed the server URL correctly including
the server name, port number, and protocol (http/https). See
Connect to team projects to learn more.
The TFS configuration has changed. If the configuration for the on-premises TFS has changed, you
must create a new connection. You might also need to clear
the client cache.
You work remotely and need to connect to a TFS Proxy server You need to configure Visual Studio to connect to TFS Proxy.
to check in files to Team Foundation version control.
You're connecting to a later version of TFS than your Visual Your version of Visual Studio or Team Explorer might be
Studio client version. incompatible with Team Foundation Server. You might need to
install one or more GDR packs. See Requirements and
compatibility for details.
Your firewall is blocking TFS services. See Allow a program to communicate through Windows
Firewall.
Visual Studio stops responding when you run a query in Your computer might be configured to bypass the proxy
Visual Studio. server. You should verify the configuration of the
BypassProxyOnLocal setting on your computer. For more
information, see BypassProxyOnLocal Configuration.
Several users receive this error when they try to connect to an on-premises TFS
If the problem occurs on more than one computer, you should contact your TFS administrator to confirm whether
the server is operational and available on the network.
As an administrator, you should check the event logs for the application-tier server to try to pinpoint the problem.
Also, you can use the following table to determine whether the server is misconfigured. In the table, problems that
are more likely to occur appear first. Therefore, you should try the resolutions in the order in which they appear so
that you increase the chance that you can solve the problem quickly.
PROBLEM RESOLUTION
The TFSService account password has expired or is incorrect. Many services for Team Foundation Server will stop running
when the service account for Team Foundation has expired.
For more information, see Change the service account or
password for Team Foundation Server.
The application-tier server for Team Foundation is unavailable. You should verify whether each required service is running. If
a required service is not running, you must restart it. If
necessary, set it to start automatically. For more information,
see Stop and start services, application pools, and websites.
The network is unavailable. You should verify whether your network is operational.
A website identity for Team Foundation is configured You should verify or correct the server binding assignments
incorrectly. that are made to websites for Team Foundation.
PROBLEM RESOLUTION
Access to a website for Team Foundation has been restricted. You should verify or correct restrictions that are made to
those websites that are based on IP addresses and domain
names.
The firewall or ports are configured incorrectly. You should verify or correct port binding assignments for
websites and port assignments for the firewall. First, you
should open the administration console for Team Foundation,
display the Application Tier page, and review the URL
assignments. If necessary, you can click Change URL to
modify the URL of a website. Next, you should verify the port
assignments for Internet Information Services (IIS) and the
ports that are allowed through the firewall. For more
information, see Review Server Status and Settings and Verify
or Correct Port Assignments.
Trust relationships between domains are not configured If a group of users cannot access Team Foundation Server, you
correctly. might have trust issues between domains.
When users connect to different versions of TFS from Visual This can occur because the GUIDs for the TFS 2012 collection
Studio, for example, they connect to TFS 2012 and then TFS are the same as that for TFS 2008. This confuses the local
2008, they can get the TF31002 error. client cache because it tries to maintain the same GUID based
local cache for both the 2008 server and the new Project
Collection in 2012.
If the previous resolutions do not solve the problem, go to the MSDN Forums - Visual Studio Team System —
Team Foundation Server - Administration.
Default manual testing permissions and access
5/31/2018 • 1 min to read • Edit Online
Exploratory testing,
view test runs
Exploratory testing,
create and delete test
runs
Provide feedback
using the Test &
Feedback extension
Request feedback
using the Test &
Feedback extension
Manage test
configurations and
test environments
Test Manager
(purchased
separately)
NOTE
Feature availability: The Test & Feedback extension is available for VSTS and TFS 2017 and later versions.
How-to Guides
Request feedback (Test & Feedback extension)
Get feedback (Work tracking)
Provide feedback with the Test & Feedback extension
Provide feedback with the Feedback client
Set feedback permissions
Reference
Default permissions and access set for collaboration tools
Give us feedback, get support
Resources
Uservoice Integration (Marketplace extension)
UserVoice UI (Marketplace extension)
Integrating with VSTS and Team Foundation Server
4/27/2018 • 1 min to read • Edit Online
You can build custom applications or services that integrate with your Visual Studio Team Services (VSTS ) and
Team Foundation Server (TFS ) accounts by using the REST APIs to make direct HTTP calls, or utilize our .NET
Client Libraries.
Along with interacting with VSTS or TFS in your application, you can also integrate with popular third-party
services such as Slack or Jenkins.
5-Minute Quickstarts
Check out the quick starts to get you started:
Create a bug
Get work items using queries
Concepts
.NET client libraries
Authentication
Service hooks
REST API Versioning
Cross-origin resource sharing
Samples
Custom application samples
How-to Guides
Authenticate with PATs
Authenticate with OAuth 2.0
Create service hooks subscriptions programmatically
Reference
Service hooks consumers and action reference
Service hooks events reference
Resources
REST API reference
1 min to read •
Edit Online