ui

package
Version: v0.0.0-...-3acf0f4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 3, 2021 License: BSD-3-Clause Imports: 92 Imported by: 0

Documentation

Overview

Package ui contains local Tast tests that exercise Chrome's integration with the rest of Chrome OS.

Please use Chrome browser tests (https://www.chromium.org/developers/testing/browser-tests) or unit tests instead whenever possible.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CUJRunner

func CUJRunner(ctx context.Context, s *testing.State)

func ChromeCrashLoggedIn

func ChromeCrashLoggedIn(ctx context.Context, s *testing.State)

func ChromeCrashLoggedInDirect

func ChromeCrashLoggedInDirect(ctx context.Context, s *testing.State)

ChromeCrashLoggedInDirect tests that Chrome crashes that happen during tast tests are properly captured (that is, during tast tests which are testing something other than the crash system).

The other Chrome crash tests cover cases that we expect to occur on end-user machines, by simulating user consent. This test covers the tast case, where we bypass consent by telling the crash system that we are in a test environment. In particular, breakpad goes through a very different code path which doesn't involve crash_reporter at all, and we want that to keep working.

Note: The name is a misnomer; the 'Direct' refers to the old days when both breakpad and crashpad bypassed crash_reporter and wrote the crashes directly onto disk during this test. Crashpad no longer does that; the test should be named "TastMode". TODO(https://crbug.com/1201467): Rename to ChromeCrashLoggedInTastMode

func ChromeCrashLoop

func ChromeCrashLoop(ctx context.Context, s *testing.State)

ChromeCrashLoop tests the crash-loop-mode crash reporter system. If Chrome crashes often enough to log the user out, a crash report will be generated and immediately sent to crash_sender; check that crash_sender correctly receives the crash report.

func ChromeCrashNotLoggedIn

func ChromeCrashNotLoggedIn(ctx context.Context, s *testing.State)

func ChromeCrashNotLoggedInDirect

func ChromeCrashNotLoggedInDirect(ctx context.Context, s *testing.State)

ChromeCrashNotLoggedInDirect tests that Chrome crashes that happen during tast tests are properly captured (that is, during tast tests which are testing something other than the crash system).

The other Chrome crash tests cover cases that we expect to occur on end-user machines, by simulating user consent. This test covers the tast case, where we bypass consent by telling the crash system that we are in a test environment. In particular, breakpad goes through a very different code path which doesn't involve crash_reporter at all, and we want that to keep working.

Note: The name is a misnomer; the 'Direct' refers to the old days when both breakpad and crashpad bypassed crash_reporter and wrote the crashes directly onto disk during this test. Crashpad no longer does that; the test should be named "TastMode". TODO(https://crbug.com/1201467): Rename to ChromeCrashNotLoggedInTastMode

func ChromeCrashReporterMetrics

func ChromeCrashReporterMetrics(ctx context.Context, s *testing.State)

func ChromePIPEnergyAndPower

func ChromePIPEnergyAndPower(ctx context.Context, s *testing.State)

func ChromePIPRoundedCornersUnderlay

func ChromePIPRoundedCornersUnderlay(ctx context.Context, s *testing.State)

func ChromeRespawn

func ChromeRespawn(ctx context.Context, s *testing.State)

func ChromeValidity

func ChromeValidity(ctx context.Context, s *testing.State)

func DesksAnimationPerf

func DesksAnimationPerf(ctx context.Context, s *testing.State)

func DesksChainedAnimationPerf

func DesksChainedAnimationPerf(ctx context.Context, s *testing.State)

func DesksTrackpadSwipePerf

func DesksTrackpadSwipePerf(ctx context.Context, s *testing.State)

func DesktopControl

func DesktopControl(ctx context.Context, s *testing.State)

func DragMaximizedWindowPerf

func DragMaximizedWindowPerf(ctx context.Context, s *testing.State)

func DragTabInClamshellPerf

func DragTabInClamshellPerf(ctx context.Context, s *testing.State)

func DragTabInTabletPerf

func DragTabInTabletPerf(ctx context.Context, s *testing.State)

func DragWindowFromShelfPerf

func DragWindowFromShelfPerf(ctx context.Context, s *testing.State)

func EverydayMultiTaskingCUJ

func EverydayMultiTaskingCUJ(ctx context.Context, s *testing.State)

func Exceptions

func Exceptions(ctx context.Context, s *testing.State)

func ExtendedDisplayCUJ

func ExtendedDisplayCUJ(ctx context.Context, s *testing.State)

ExtendedDisplayCUJ performs the video cuj (youtube web) test on extended display. Known issues: b:187165216 describes an issue that click event cannot be executed on extended display on certain models.

func ForceRegion

func ForceRegion(ctx context.Context, s *testing.State)

func GuestModeExtension

func GuestModeExtension(ctx context.Context, s *testing.State)

func HotseatAnimation

func HotseatAnimation(ctx context.Context, s *testing.State)

HotseatAnimation measures the performance of hotseat background bounds animation.

func HotseatDrag

func HotseatDrag(ctx context.Context, s *testing.State)

func HotseatScrollPerf

func HotseatScrollPerf(ctx context.Context, s *testing.State)

HotseatScrollPerf records the animation smoothness for shelf scroll animation.

func IdlePerf

func IdlePerf(ctx context.Context, s *testing.State)

func LauncherAnimationPerf

func LauncherAnimationPerf(ctx context.Context, s *testing.State)

func LauncherDragPerf

func LauncherDragPerf(ctx context.Context, s *testing.State)

func LauncherPageSwitchPerf

func LauncherPageSwitchPerf(ctx context.Context, s *testing.State)

func LoginPerf

func LoginPerf(ctx context.Context, s *testing.State)

func MeetCUJ

func MeetCUJ(ctx context.Context, s *testing.State)

MeetCUJ measures the performance of critical user journeys for Google Meet. Journeys for Google Meet are specified by testing parameters.

Pre-preparation:

- Open a Meet window.
- Create and enter the meeting code.
- Open a Google Docs window (if necessary).
- Enter split mode (if necessary).
- Turn off camera (if necessary).

During recording:

- Join the meeting.
- Add participants(bots) to the meeting.
- Set up the layout.
- Max out the number of the maximum tiles (if necessary).
- Start to present (if necessary).
- Input notes to Google Docs file (if necessary).
- Wait for 30 seconds before ending the meeting.

After recording:

- Record and save metrics.

func NotificationPopupPerf

func NotificationPopupPerf(ctx context.Context, s *testing.State)

func NotificationScrollingPerf

func NotificationScrollingPerf(ctx context.Context, s *testing.State)

func OverviewDragWindowPerf

func OverviewDragWindowPerf(ctx context.Context, s *testing.State)

func OverviewPerf

func OverviewPerf(ctx context.Context, s *testing.State)

func OverviewScrollPerf

func OverviewScrollPerf(ctx context.Context, s *testing.State)

func PlayPauseChrome

func PlayPauseChrome(ctx context.Context, s *testing.State)

func QuickCheckCUJ

func QuickCheckCUJ(ctx context.Context, s *testing.State)

func QuickCheckCUJ2

func QuickCheckCUJ2(ctx context.Context, s *testing.State)

QuickCheckCUJ2 measures the system performance after login or wakeup by checking common apps

func RecordFullScreen

func RecordFullScreen(ctx context.Context, s *testing.State)

func RecordPartialScreen

func RecordPartialScreen(ctx context.Context, s *testing.State)

func ScreenRotationPerf

func ScreenRotationPerf(ctx context.Context, s *testing.State)

func SessionManagerRespawn

func SessionManagerRespawn(ctx context.Context, s *testing.State)

func SnapPerf

func SnapPerf(ctx context.Context, s *testing.State)

func SplitViewResizePerf

func SplitViewResizePerf(ctx context.Context, s *testing.State)

func StadiaGameplayCUJ

func StadiaGameplayCUJ(ctx context.Context, s *testing.State)

StadiaGameplayCUJ test starts and plays a exploration scene and gathering the performance. The game playing is hardcoded.

func SystemTrayPerf

func SystemTrayPerf(ctx context.Context, s *testing.State)

func TabHoverCardAnimationPerf

func TabHoverCardAnimationPerf(ctx context.Context, s *testing.State)

func TabLoadingAnimationPerf

func TabLoadingAnimationPerf(ctx context.Context, s *testing.State)

func TabSwitchCUJ

func TabSwitchCUJ(ctx context.Context, s *testing.State)

func TabSwitchCUJ2

func TabSwitchCUJ2(ctx context.Context, s *testing.State)

TabSwitchCUJ2 measures the performance of tab-switching CUJ.

WPR server should be running in a remote server. TabSwitchCUJRecorder2 case can be used to record WPR content for this test in the remote server.

func TabSwitchCUJRecorder

func TabSwitchCUJRecorder(ctx context.Context, s *testing.State)

func TabSwitchCUJRecorder2

func TabSwitchCUJRecorder2(ctx context.Context, s *testing.State)

TabSwitchCUJRecorder2 runs tab-switching CUJ test in chrome wpr recording mode. It will record the premium scenario, which can be used for basic and plus testing as well.

The test can either do recording on a DUT local WPR server, or a remote WPR server. Local WPR server will be set up automatically by the preconditon. Steps to do remote recording:

1. Manually run wpr in record mode on a remote server.
2. Run this test.
3. Manually terminate wpr to output a record file on remote server.
4. Check remote wpr configureation to find the record file

func TabletOperations

func TabletOperations(ctx context.Context, s *testing.State)

func TabletTransitionPerf

func TabletTransitionPerf(ctx context.Context, s *testing.State)

func TaskSwitchCUJ

func TaskSwitchCUJ(ctx context.Context, s *testing.State)

func UbertrayOpenSettings

func UbertrayOpenSettings(ctx context.Context, s *testing.State)

UbertrayOpenSettings tests that we can open the settings app from Quick Settings.

func UnlockPerf

func UnlockPerf(ctx context.Context, s *testing.State)

func VideoCUJ

func VideoCUJ(ctx context.Context, s *testing.State)

func VideoCUJ2

func VideoCUJ2(ctx context.Context, s *testing.State)

VideoCUJ2 performs the video cases including youtube web, and youtube app.

func WebUIJSErrors

func WebUIJSErrors(ctx context.Context, s *testing.State)

func WindowArrangementCUJ

func WindowArrangementCUJ(ctx context.Context, s *testing.State)

func WindowControl

func WindowControl(ctx context.Context, s *testing.State)

func WindowCycle

func WindowCycle(ctx context.Context, s *testing.State)

WindowCycle verifies that we can cycle through open windows using Alt+Tab and Alt+Shift+Tab.

func WindowCyclePerf

func WindowCyclePerf(ctx context.Context, s *testing.State)

func WindowResizePerf

func WindowResizePerf(ctx context.Context, s *testing.State)

Types

type ConferenceService

type ConferenceService struct {
	// contains filtered or unexported fields
}

func (*ConferenceService) RunGoogleMeetScenario

func (s *ConferenceService) RunGoogleMeetScenario(ctx context.Context, req *pb.MeetScenarioRequest) (*empty.Empty, error)

func (*ConferenceService) RunZoomScenario

func (s *ConferenceService) RunZoomScenario(ctx context.Context, req *pb.MeetScenarioRequest) (*empty.Empty, error)

Source Files

Directories

Path Synopsis
Package chromecrash contains functionality shared by tests that exercise Chrome crash-dumping.
Package chromecrash contains functionality shared by tests that exercise Chrome crash-dumping.
Package conference contains conference CUJ utilities and conference room instances.
Package conference contains conference CUJ utilities and conference room instances.
cuj
Package cuj has utilities for CUJ-style UI performance tests.
Package cuj has utilities for CUJ-style UI performance tests.
bluetooth
Package bluetooth provides the control of bluetooth settings from the OS settings window.
Package bluetooth provides the control of bluetooth settings from the OS settings window.
volume
Package volume provides the control of volume settings from cras.
Package volume provides the control of volume settings from cras.
Package cujrunner implements a way to run composed cuj using a json config.
Package cujrunner implements a way to run composed cuj using a json config.
Package everydaymultitaskingcuj contains the test code for Everyday MultiTasking CUJ.
Package everydaymultitaskingcuj contains the test code for Everyday MultiTasking CUJ.
Package netflix provides gmail instance for cuj tests on Chrome OS.
Package netflix provides gmail instance for cuj tests on Chrome OS.
Package perfutil provides utilities of storing performance data for UI tests.
Package perfutil provides utilities of storing performance data for UI tests.
Package quickcheckcuj contains quick check CUJ test cases scenario.
Package quickcheckcuj contains quick check CUJ test cases scenario.
Package respawn contains shared code to verify that processes respawn after exiting.
Package respawn contains shared code to verify that processes respawn after exiting.
Package tabswitchcuj contains the test code for TabSwitchCUJ.
Package tabswitchcuj contains the test code for TabSwitchCUJ.
Package videocuj contains the test code for VideoCUJ.
Package videocuj contains the test code for VideoCUJ.
Package windowarrangementcuj contains helper util and test code for WindowArrangementCUJ.
Package windowarrangementcuj contains helper util and test code for WindowArrangementCUJ.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto