﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<AxeAssessmentManifest xmlns="http://www.microsoft.com/axe/assessment/manifest" SchemaVersion="1.1">
    <VersionedId>
        <Guid>{0e2e25c8-a4aa-463c-82b5-fcaecd13073b}</Guid>
        <Version>
            <Major>2</Major>
            <Minor>0</Minor>
            <Build>2401</Build>
            <Revision>28001</Revision>
        </Version>
    </VersionedId>
    <MinimumAxeVersionRequired>
        <Version>
            <Major>10</Major>
            <Minor>0</Minor>
            <Build>22000</Build>
            <Revision>0</Revision>
        </Version>
    </MinimumAxeVersionRequired>
    <Description>
        <ProgrammaticName>EdgeAutomationPerf</ProgrammaticName>
        <DisplayName>Web Browsing Performance Assessment</DisplayName>
        <ToolTip>Various web page launch and rendering performance for Microsoft Edge</ToolTip>
    </Description>
    <Properties>
        <Author>Microsoft Corporation</Author>
        <Url>https://go.microsoft.com/fwlink/?LinkID=293840</Url>
        <AuthorUrl>https://go.microsoft.com/fwlink/?LinkID=294051</AuthorUrl>
        <UpdateUrl>https://go.microsoft.com/fwlink/?LinkID=294052</UpdateUrl>
        <Copyright>© 2013 Microsoft Corporation. All rights reserved.</Copyright>
        <OnlyForProcessor>
            <X86 />
            <X64 />
            <ARM64 />
        </OnlyForProcessor>
        <VerifyOSVersion>
            <Version>
                <Major>10</Major>
                <Minor>0</Minor>
                <Build>19041</Build>
                <Revision>0</Revision>
            </Version>
        </VerifyOSVersion>
        <ShouldRunSilent />
        <PowerProfileNotBalancedWarn />
        <DriverVerifierWarn />
        <ProblemDevicesWarn />
        <RequiresDisplay />
        <EstimatedRunTime>1800000000</EstimatedRunTime>
        <WatchDogTimeOut>36000000000</WatchDogTimeOut>
        <ExitValueMeaning>
            <ZeroIsSuccess />
        </ExitValueMeaning>
        <UniversalAssessment />
    </Properties>
    <PresentationHints>
        <Pages xmlns="http://www.microsoft.com/axe/assessment/manifest">
            <Page>
                <Description>
                    <ProgrammaticName>EnergyConsumptionSummary-SubPage</ProgrammaticName>
                    <DisplayName>Energy Consumption Summary</DisplayName>
                    <ToolTip>Details for Energy Consumption Summary</ToolTip>
                </Description>
                <Groups>
                    <Group>
                        <Description>
                            <DisplayName>Energy Consumption Summary</DisplayName>
                        </Description>
                        <Columns>
                            <Column>
                                <Metric>EnergyAtStart</Metric>
                            </Column>
                            <Column>
                                <Metric>EnergyAtEnd</Metric>
                            </Column>
                            <Column>
                                <Metric>EnergyConsumed</Metric>
                            </Column>
                        </Columns>
                    </Group>
                </Groups>
            </Page>
        </Pages>
        <Columns>
            <Column>
                <Metric>EnergyConsumptionSummary</Metric>
                <PageLink>EnergyConsumptionSummary-SubPage</PageLink>
            </Column>
        </Columns>
    </PresentationHints>
    <MetricDefinitions xmlns="http://www.microsoft.com/axe/assessment/manifest">
        <MetricDefinition>
            <Description>
                <ProgrammaticName>EnergyConsumptionSummary</ProgrammaticName>
                <DisplayName>Energy Consumption Summary</DisplayName>
            </Description>
            <Type>
                <String />
            </Type>
            <PrimaryStatistic>
                <Mean />
            </PrimaryStatistic>
            <SecondaryStatistic>
                <None />
            </SecondaryStatistic>
            <Ordinal>0</Ordinal>
        </MetricDefinition>
        <MetricDefinition>
            <Description>
                <ProgrammaticName>EnergyAtStart</ProgrammaticName>
                <DisplayName>Energy at start</DisplayName>
                <ToolTip>Energy at start, in milliwatt-hours, during the job.</ToolTip>
            </Description>
            <Type>
                <Double />
            </Type>
            <Units>mW\h</Units>
            <PrimaryStatistic>
                <Mean />
            </PrimaryStatistic>
            <SecondaryStatistic>
                <None />
            </SecondaryStatistic>
            <Ordinal>1</Ordinal>
            <DecimalPlaces>3</DecimalPlaces>
        </MetricDefinition>
        <MetricDefinition>
            <Description>
                <ProgrammaticName>EnergyAtEnd</ProgrammaticName>
                <DisplayName>Energy at end</DisplayName>
                <ToolTip>Energy at end, in milliwatt-hours, during the job.</ToolTip>
            </Description>
            <Type>
                <Double />
            </Type>
            <Units>mW\h</Units>
            <PrimaryStatistic>
                <Mean />
            </PrimaryStatistic>
            <SecondaryStatistic>
                <None />
            </SecondaryStatistic>
            <Ordinal>2</Ordinal>
            <DecimalPlaces>3</DecimalPlaces>
        </MetricDefinition>
        <MetricDefinition>
            <Description>
                <ProgrammaticName>EnergyConsumed</ProgrammaticName>
                <DisplayName>Energy consumed</DisplayName>
                <ToolTip>Energy consumed, in milliwatt-hours, during the job.</ToolTip>
            </Description>
            <Type>
                <Double />
            </Type>
            <Units>mW\h</Units>
            <PrimaryStatistic>
                <Mean />
            </PrimaryStatistic>
            <SecondaryStatistic>
                <None />
            </SecondaryStatistic>
            <Ordinal>3</Ordinal>
            <DecimalPlaces>3</DecimalPlaces>
        </MetricDefinition>
    </MetricDefinitions>
    <ParameterDefinitions>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>Iterations</ProgrammaticName>
                <DisplayName>Number of Iterations</DisplayName>
                <ToolTip>Specify the number of iterations the assessment should perform. Default value is 3.</ToolTip>
                <Categories>
                    <Category>Execution Parameters</Category>
                </Categories>
            </Description>
            <Type>
                <Int32 />
            </Type>
            <Inclusion>
                <Required />
            </Inclusion>
            <DefaultValue>3</DefaultValue>
            <Constraints>
                <MinimumConstraint>1</MinimumConstraint>
                <MaximumConstraint>20</MaximumConstraint>
            </Constraints>
            <CommandLineFormat>-Iterations {0}</CommandLineFormat>
            <Ordinal>1</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>ScenarioIndex</ProgrammaticName>
                <DisplayName>Scenario Json File Index</DisplayName>
                <ToolTip>Specify the scenario json file the assessment should play.</ToolTip>
                <Categories>
                    <Category>Execution Parameters</Category>
                </Categories>
            </Description>
            <Type>
                <Int32 />
            </Type>
            <Enumerations>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>Browsing</ProgrammaticName>
                        <DisplayName>Browsing Websites</DisplayName>
                    </Description>
                    <Value>0</Value>
                </Enumeration>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>Office</ProgrammaticName>
                        <DisplayName>Running Office Applications</DisplayName>
                    </Description>
                    <Value>1</Value>
                </Enumeration>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>Skype</ProgrammaticName>
                        <DisplayName>Joining a Skype Meeting</DisplayName>
                    </Description>
                    <Value>2</Value>
                </Enumeration>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>Netflix</ProgrammaticName>
                        <DisplayName>Playing a Netflix Video</DisplayName>
                    </Description>
                    <Value>3</Value>
                </Enumeration>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>YouTube</ProgrammaticName>
                        <DisplayName>Playing a YouTube Video (default)</DisplayName>
                    </Description>
                    <Value>4</Value>
                </Enumeration>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>BrowsingCN</ProgrammaticName>
                        <DisplayName>Browsing Websites (CN)</DisplayName>
                    </Description>
                    <Value>5</Value>
                </Enumeration>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>BrowsingHobl</ProgrammaticName>
                        <DisplayName>Browsing Websites (hobl)</DisplayName>
                    </Description>
                    <Value>6</Value>
                </Enumeration>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>BrowsingAbl</ProgrammaticName>
                        <DisplayName>Browsing Websites (abl)</DisplayName>
                    </Description>
                    <Value>7</Value>
                </Enumeration>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>BrowsingAuthentication</ProgrammaticName>
                        <DisplayName>Browsing Authentication</DisplayName>
                    </Description>
                    <Value>8</Value>
                </Enumeration>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>YoutubeToS</ProgrammaticName>
                        <DisplayName>Playing a YouTube Video (ToS)</DisplayName>
                    </Description>
                    <Value>9</Value>
                </Enumeration>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>BrowsingAblCN</ProgrammaticName>
                        <DisplayName>Browsing Websites (abl_CN)</DisplayName>
                    </Description>
                    <Value>10</Value>
                </Enumeration>
            </Enumerations>
            <Inclusion>
                <Required />
            </Inclusion>
            <DefaultValue>0</DefaultValue>
            <CommandLineFormat>-ScenarioIndex {0}</CommandLineFormat>
            <Ordinal>2</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>Mode</ProgrammaticName>
                <DisplayName>Mode</DisplayName>
                <ToolTip>Specify the execution mode (training, normal or native i.e. without WebDriver)</ToolTip>
                <Categories>
                    <Category>Execution Parameters</Category>
                </Categories>
            </Description>
            <Type>
                <Int32 />
            </Type>
            <Enumerations>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>Normal</ProgrammaticName>
                        <DisplayName>Normal</DisplayName>
                    </Description>
                    <Value>0</Value>
                </Enumeration>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>Training</ProgrammaticName>
                        <DisplayName>Training</DisplayName>
                    </Description>
                    <Value>1</Value>
                </Enumeration>
                <Enumeration>
                    <Description>
                        <ProgrammaticName>Trained</ProgrammaticName>
                        <DisplayName>Trained</DisplayName>
                    </Description>
                    <Value>2</Value>
                </Enumeration>
            </Enumerations>
            <Inclusion>
                <Required />
            </Inclusion>
            <DefaultValue>0</DefaultValue>
            <CommandLineFormat>-Mode {0}</CommandLineFormat>
            <Ordinal>3</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>ScenarioDurationSecs</ProgrammaticName>
                <DisplayName>Scenario Duration (secs)</DisplayName>
                <ToolTip>Specify the duration for calls or streaming.</ToolTip>
                <Categories>
                    <Category>Workload Parameters</Category>
                </Categories>
            </Description>
            <Type>
                <Int32 />
            </Type>
            <DefaultValue>1800</DefaultValue>
            <BenchmarkValue>1800</BenchmarkValue>
            <Constraints>
                <MinimumConstraint>300</MinimumConstraint>
            </Constraints>
            <CommandLineFormat>-ScenarioDurationSecs {0}</CommandLineFormat>
            <Ordinal>4</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>SenderEmailAddress</ProgrammaticName>
                <DisplayName>Sender Email Address</DisplayName>
                <ToolTip>Specify the sender email address</ToolTip>
                <Categories>
                    <Category>Workload Parameters</Category>
                </Categories>
            </Description>
            <Type>
                <String />
            </Type>
            <Inclusion>
                <OptionalIncluded />
            </Inclusion>
            <CommandLineFormat>-SenderEmailAddress '{0}'</CommandLineFormat>
            <Ordinal>5</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>SenderEmailPassword</ProgrammaticName>
                <DisplayName>Sender Email Password</DisplayName>
                <ToolTip>Specify the sender email password</ToolTip>
                <Categories>
                    <Category>Workload Parameters</Category>
                </Categories>
            </Description>
            <Type>
                <String />
            </Type>
            <Inclusion>
                <OptionalIncluded />
            </Inclusion>
            <CommandLineFormat>-SenderEmailPassword '{0}'</CommandLineFormat>
            <Ordinal>6</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>MeetingInvitationUrl</ProgrammaticName>
                <DisplayName>Meeting Invitation URL</DisplayName>
                <ToolTip>Specify the meeting invitation URL</ToolTip>
                <Categories>
                    <Category>Workload Parameters</Category>
                </Categories>
            </Description>
            <Type>
                <String />
            </Type>
            <Inclusion>
                <OptionalIncluded />
            </Inclusion>
            <CommandLineFormat>-MeetingInvitationUrl '{0}'</CommandLineFormat>
            <Ordinal>7</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>CredentialFilePath</ProgrammaticName>
                <DisplayName>Credential File Path</DisplayName>
                <ToolTip>Specify the credential file path (Template: scenario.browsing.credentials.json)</ToolTip>
                <Categories>
                    <Category>Workload Parameters</Category>
                </Categories>
            </Description>
            <Visibility>
                <Hidden />
            </Visibility>
            <Type>
                <String />
            </Type>
            <Inclusion>
                <OptionalIncluded />
            </Inclusion>
            <DefaultValue>parameters.browsing.credentials.json</DefaultValue>
            <BenchmarkValue>parameters.browsing.credentials.json</BenchmarkValue>
            <CommandLineFormat>-CredentialFilePath '{0}'</CommandLineFormat>
            <Ordinal>8</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>EmulationEnabled</ProgrammaticName>
                <DisplayName>Enable device emulation</DisplayName>
                <ToolTip>Enable DevTools device emulation for screen resolution</ToolTip>
                <Categories>
                    <Category>Device Emulation</Category>
                </Categories>
            </Description>
            <Type>
                <Boolean />
            </Type>
            <DefaultValue>False</DefaultValue>
            <BenchmarkValue>False</BenchmarkValue>
            <CommandLineFormat>-EmulationEnabled</CommandLineFormat>
            <Ordinal>9</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>ScreenHeight</ProgrammaticName>
                <DisplayName>Screen height (pixels)</DisplayName>
                <ToolTip>Screen height pixel count</ToolTip>
                <Categories>
                    <Category>Device Emulation</Category>
                </Categories>
            </Description>
            <Type>
                <Int32 />
            </Type>
            <PresentWith>
                <ParameterIds>
                    <ParameterId>
                        <ProgrammaticName>EmulationEnabled</ProgrammaticName>
                        <Value>True</Value>
                    </ParameterId>
                </ParameterIds>
            </PresentWith>
            <CommandLineFormat>-ScreenHeight {0}</CommandLineFormat>
            <Ordinal>10</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>ScreenWidth</ProgrammaticName>
                <DisplayName>Screen width (pixels)</DisplayName>
                <ToolTip>Screen width pixel count</ToolTip>
                <Categories>
                    <Category>Device Emulation</Category>
                </Categories>
            </Description>
            <Type>
                <Int32 />
            </Type>
            <PresentWith>
                <ParameterIds>
                    <ParameterId>
                        <ProgrammaticName>EmulationEnabled</ProgrammaticName>
                        <Value>True</Value>
                    </ParameterId>
                </ParameterIds>
            </PresentWith>
            <CommandLineFormat>-ScreenWidth {0}</CommandLineFormat>
            <Ordinal>11</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>PixelRatio</ProgrammaticName>
                <DisplayName>Pixel ratio</DisplayName>
                <ToolTip>Ratio of the resolution in physical pixels to the resolution in CSS pixels for the current display</ToolTip>
                <Categories>
                    <Category>Device Emulation</Category>
                </Categories>
            </Description>
            <Type>
                <Double />
            </Type>
            <PresentWith>
                <ParameterIds>
                    <ParameterId>
                        <ProgrammaticName>EmulationEnabled</ProgrammaticName>
                        <Value>True</Value>
                    </ParameterId>
                </ParameterIds>
            </PresentWith>
            <DefaultValue>1.0</DefaultValue>
            <BenchmarkValue>1.0</BenchmarkValue>
            <CommandLineFormat>-PixelRatio {0}</CommandLineFormat>
            <Ordinal>12</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>LocalDebuggingLaunch</ProgrammaticName>
                <DisplayName>Launch using local debugging port</DisplayName>
                <ToolTip>Launch Microsoft Edge process as the user before starting automation.</ToolTip>
                <Categories>
                    <Category>Options</Category>
                </Categories>
            </Description>
            <Type>
                <Boolean />
            </Type>
            <DefaultValue>False</DefaultValue>
            <BenchmarkValue>False</BenchmarkValue>
            <CommandLineFormat>-LocalDebuggingLaunch</CommandLineFormat>
            <Ordinal>13</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>ForceImmediateSleepingTabs</ProgrammaticName>
                <DisplayName>Force tabs immediate timeout</DisplayName>
                <ToolTip>Enables Sleeping Tabs feature with an immediate timeout.</ToolTip>
                <Categories>
                    <Category>Options</Category>
                </Categories>
            </Description>
            <Type>
                <Boolean />
            </Type>
            <DefaultValue>False</DefaultValue>
            <BenchmarkValue>False</BenchmarkValue>
            <CommandLineFormat>-ForceImmediateSleepingTabs</CommandLineFormat>
            <Ordinal>14</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>CollectHistograms</ProgrammaticName>
                <DisplayName>Collect histograms</DisplayName>
                <ToolTip>Save performance histograms to results at the end of the assessment execution.</ToolTip>
                <Categories>
                    <Category>Options</Category>
                </Categories>
            </Description>
            <Type>
                <Boolean />
            </Type>
            <DefaultValue>False</DefaultValue>
            <BenchmarkValue>False</BenchmarkValue>
            <CommandLineFormat>-CollectHistograms</CommandLineFormat>
            <Ordinal>15</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>UserPreExecuteWorkloadCommand</ProgrammaticName>
                <DisplayName>Pre Execute Workload command</DisplayName>
                <ToolTip>The command of Pre Execute Workload.</ToolTip>
                <Categories>
                    <Category>Pre/Post Execute Workload</Category>
                </Categories>
            </Description>
            <Type>
                <String />
            </Type>
            <DefaultValue>%AssessmentSystemPath%\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy bypass -Command ..\universal\ReadRaritanPower.ps1 -ReadPower 'Python ..\universal\ReadRaritanPower.py' -Stage Pre</DefaultValue>
            <CommandLineFormat>{0}</CommandLineFormat>
            <ForUserPreExecuteWorkloadCommand>True</ForUserPreExecuteWorkloadCommand>
            <ForExecuteWorkloadCommand>False</ForExecuteWorkloadCommand>
            <Ordinal>17</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>WaitUserPreExecuteWorkload</ProgrammaticName>
                <DisplayName>Wait Pre Execute Workload</DisplayName>
                <ToolTip>Wait for the Pre Execute Workload.</ToolTip>
                <Categories>
                    <Category>Pre/Post Execute Workload</Category>
                </Categories>
            </Description>
            <Type>
                <Boolean />
            </Type>
            <ForWaitUserPreExecuteWorkload>True</ForWaitUserPreExecuteWorkload>
            <ForExecuteWorkloadCommand>False</ForExecuteWorkloadCommand>
            <DefaultValue>True</DefaultValue>
            <Ordinal>18</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>UserPostExecuteWorkloadCommand</ProgrammaticName>
                <DisplayName>Post Execute Workload command</DisplayName>
                <ToolTip>The command of Post Execute Workload.</ToolTip>
                <Categories>
                    <Category>Pre/Post Execute Workload</Category>
                </Categories>
            </Description>
            <Type>
                <String />
            </Type>
            <DefaultValue>%AssessmentSystemPath%\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy bypass -Command ..\universal\ReadRaritanPower.ps1 -ReadPower 'Python ..\universal\ReadRaritanPower.py' -Stage Post</DefaultValue>
            <CommandLineFormat>{0}</CommandLineFormat>
            <ForExecuteWorkloadCommand>False</ForExecuteWorkloadCommand>
            <ForUserPostExecuteWorkloadCommand>True</ForUserPostExecuteWorkloadCommand>
            <Ordinal>19</Ordinal>
        </ParameterDefinition>
        <ParameterDefinition>
            <Description>
                <ProgrammaticName>WaitUserPostExecuteWorkload</ProgrammaticName>
                <DisplayName>Wait Post Execute Workload</DisplayName>
                <ToolTip>Wait for the Post Execute Workload.</ToolTip>
                <Categories>
                    <Category>Pre/Post Execute Workload</Category>
                </Categories>
            </Description>
            <Type>
                <Boolean />
            </Type>
            <ForExecuteWorkloadCommand>False</ForExecuteWorkloadCommand>
            <ForWaitUserPostExecuteWorkload>True</ForWaitUserPostExecuteWorkload>
            <DefaultValue>True</DefaultValue>
            <Ordinal>20</Ordinal>
        </ParameterDefinition>
    </ParameterDefinitions>
    <Commands>
        <ExecuteWorkload>
            <CreateProcess>
                <ApplicationName>%AssessmentSystemPath%\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy bypass -Command .\EdgeAutomation.ps1</ApplicationName>
                <CreateNoWindow />
            </CreateProcess>
        </ExecuteWorkload>
    </Commands>
    <Diagnostics>
        <TracingProfiles>
            <TracingProfile>
                <ProgrammaticName>EnergyDiagnostics</ProgrammaticName>
                <FileName>..\legacy\resources\E3.wprp</FileName>
                <ProfileName>E3Profile.Light.Memory</ProfileName>
                <MergeProfile>TraceMerge_Default</MergeProfile>
            </TracingProfile>
            <TracingProfile>
                <ProgrammaticName>EnergyDiagnosticsVerbose</ProgrammaticName>
                <FileName>..\legacy\resources\E3.wprp</FileName>
                <ProfileName>E3Profile.Verbose.Memory</ProfileName>
                <MergeProfile>TraceMerge_Default</MergeProfile>
            </TracingProfile>
        </TracingProfiles>
    </Diagnostics>
    <LocalizedStringDictionary />
</AxeAssessmentManifest>
