Export (0) Print
Expand All

Test user-initiated write operations that involve Project Server 2013

Project Server 2013
 

Applies to: Project Server 2013

Topic Last Modified: 2013-12-18

Summary:  Learn about write operations that users can start by using only Project Web App (PWA), without the involvement of Project Professional on the client computer.

Some of the most frequent operations in this category that you may want to test include the following:

  • Update status information about My Tasks

  • Submit a timesheet

  • Approve task updates

  • Approve timesheets

While web tests alone are enough for read-only operations, for write operations some custom code that takes advantage of the Project Server Interface (PSI) is required.

When you define the test mixes, you should always plan one read-only test that corresponds to each write test. For example, in order to submit timesheets, a user will always have to access the My Timesheets page.

The "EPM Stress Test" Visual Studio solution provides a sample test method ("SubmitTaskUpdates") to implement the Submit Task Updates test. This solution is part of the "Project Server 2010 Performance Lab Kit" (discussed previously in Plan a Project Server 2013 performance test lab). The sample code picks a random assignment from a list of all the assignments in the system (pre-generated in an XML file). Then it impersonates the resource assigned to that assignment and submits a change of the progress (percent complete).

However, in order to test task-update submission operations realistically, you also have to add a web test to hit the My Tasks page. You can set such a test by using the Web Test Recorder in Visual Studio (discussed previously in Set up the test environment for Project Server 2013. The test mix between the web test (page hit) and the unit test (actual task update submission) should be two page hits for every test submission.

The "EPM Stress Test" Visual Studio solution provides a sample test method ("CreateAndSubmitTimeSheet") to implement the Submit Timesheets test. This solution is part of the "Project Server 2010 Performance Lab Kit" (discussed previously in Plan a Project Server 2013 performance test lab). The sample code will select a random resource and a random period, and then will create the timesheet.

However, in order to test timesheet-submission operations realistically, you have to add a web test to hit the My Timesheets page. You can set up such a test by using the Web Test Recorder in Visual Studio, (discussed previously in Set up the test environment for Project Server 2013. The test mix between the web test (page hit) and the unit test (actual timesheet submission) should be two page hits for every test submission.

The "EPM Stress Test" Visual Studio solution provides a sample test method ("ApproveTaskUpdates") to implement the Approve Task Updates test. This solution is part of the "Project Server 2010 Performance Lab Kit" (discussed previously in Plan a Project Server 2013 performance test lab). The sample code picks a random project manager, gets the first pending task update from the list of task updates pending approval, and approves it. Then it submits the approval and finally republishes the affected project.

However, in order to test task-update approval operations realistically, you also have to add a web test to hit the approvals page. You can set up such a test by using the Web Test Recorder in Visual Studio, (discussed previously in Set up the test environment for Project Server 2013. The test mix between the web test (page hit) and the unit test (actual task update approval) should be two page hits for every test submission.

The "EPM Stress Test" Visual Studio solution provides a sample test method ("ApproveTimesheets") to implement the Approve Timesheets test. This solution is part of the "Project Server 2010 Performance Lab Kit" (discussed previously in Plan a Project Server 2013 performance test lab). The sample code picks a random timesheet approver, gets a random timesheet from the list of timesheets pending approval, and finally approves it.

However, in order to test timesheet approval operations realistically, you also have to add a web test to hit the approvals page. You can set up such a test by using the Web Test Recorder in Visual Studio, (discussed previously in Set up the test environment for Project Server 2013). The test mix between the web test (page hit) and the unit test (actual timesheet approval) should be two page hits for every test submission.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft