IApp Interface
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Represents the main gateway to interact with an app. This interface contains shared functionality between AndroidApp and iOSApp.
public interface IApp
type IApp = interface
Public Interface IApp
- Derived
Properties
Device |
Device information and Control |
Contains helper methods for outputting the result of queries instead of resorting to Console. |
|
TestServer |
Allows HTTP access to the test server running on the device. |
Methods
Back() |
Navigate back on the device. |
ClearText() |
Clears text from the currently focused element. |
ClearText(Func<AppQuery,AppQuery>) |
Clears text from a matching element that supports it. |
ClearText(Func<AppQuery,AppWebQuery>) |
Clears text from a matching element that supports it. |
ClearText(String) |
Clears text from a matching element that supports it. |
DismissKeyboard() |
Hides keyboard if present |
DoubleTap(Func<AppQuery,AppQuery>) |
Performs two quick tap / touch gestures on the matched element. If multiple elements are matched, the first one will be used. |
DoubleTap(String) |
Performs two quick tap / touch gestures on the matched element. If multiple elements are matched, the first one will be used. |
DoubleTapCoordinates(Single, Single) |
Performs a quick double tap / touch gesture on the given coordinates. |
DragAndDrop(Func<AppQuery,AppQuery>, Func<AppQuery,AppQuery>) |
Drags the from element to the to element. |
DragAndDrop(String, String) |
Drags the from element to the to element. |
DragCoordinates(Single, Single, Single, Single) |
Performs a continuous drag gesture between 2 points. |
EnterText(Func<AppQuery,AppQuery>, String) |
Enters text into a matching element that supports it. |
EnterText(Func<AppQuery,AppWebQuery>, String) |
Enters text into a matching element that supports it. |
EnterText(String) |
Enters text into the currently focused element. |
EnterText(String, String) |
Enters text into a matching element that supports it. |
Flash(Func<AppQuery,AppQuery>) |
Highlights the results of the query by making them flash. Specify view elements using the fluent API. Defaults to all view objects that are visible. |
Flash(String) |
Highlights the results of the query by making them flash. Specify view elements using marked string. |
Invoke(String, Object) |
Invokes a method on the app's main activity for Android and app delegate for iOS. For Xamarin apps, methods must be exposed using attributes as shown below. Android example in activity:
iOS example in app delegate:
|
Invoke(String, Object[]) |
Invokes a method on the app's main activity for Android and app delegate for iOS. For Xamarin apps, methods must be exposed using attributes as shown below. Android example in activity:
iOS example in app delegate:
|
PinchToZoomIn(Func<AppQuery,AppQuery>, Nullable<TimeSpan>) |
Performs a pinch gestures on the matched element to zoom the view in. If multiple elements are matched, the first one will be used. |
PinchToZoomIn(String, Nullable<TimeSpan>) |
Performs a pinch gestures on the matched element to zoom the view in. If multiple elements are matched, the first one will be used. |
PinchToZoomInCoordinates(Single, Single, Nullable<TimeSpan>) |
Performs a pinch gestures to zoom the view in on the given coordinates. |
PinchToZoomOut(Func<AppQuery,AppQuery>, Nullable<TimeSpan>) |
Performs a pinch gestures on the matched element to zoom the view out. If multiple elements are matched, the first one will be used. |
PinchToZoomOut(String, Nullable<TimeSpan>) |
Performs a pinch gestures on the matched element to zoom the view out. If multiple elements are matched, the first one will be used. |
PinchToZoomOutCoordinates(Single, Single, Nullable<TimeSpan>) |
Performs a pinch gestures to zoom the view in on the given coordinates. |
PressEnter() |
Presses the enter key in the app. |
PressVolumeDown() |
Presses the volume down button on the device. |
PressVolumeUp() |
Presses the volume up button on the device. |
Query(Func<AppQuery,AppQuery>) |
Queries view objects using the fluent API. Defaults to only return view objects that are visible. |
Query(Func<AppQuery,AppWebQuery>) |
Queries web view objects using the fluent API. Defaults to only return view objects that are visible. |
Query(Func<AppQuery,InvokeJSAppQuery>) |
Invokes Javascript on view objects using the fluent API. |
Query(String) |
Queries view objects using the fluent API. Defaults to only return view objects that are visible. |
Query<T>(Func<AppQuery,AppTypedSelector<T>>) |
Queries properties on view objects using the fluent API. |
Repl() |
Starts an interactive REPL (Read-Eval-Print-Loop) for app exploration and pauses test execution until it is closed. |
Screenshot(String) |
Takes a screenshot of the app in it's current state. This is used to denote test steps in the Xamarin Test Cloud. |
ScrollDown(Func<AppQuery,AppQuery>, ScrollStrategy, Double, Int32, Boolean) |
Scrolls down on the first element matching query. |
ScrollDown(String, ScrollStrategy, Double, Int32, Boolean) |
Scrolls down on the first element matching query. |
ScrollDownTo(Func<AppQuery,AppQuery>, Func<AppQuery,AppQuery>, ScrollStrategy, Double, Int32, Boolean, Nullable<TimeSpan>) |
Scroll down until an element that matches the |
ScrollDownTo(Func<AppQuery,AppWebQuery>, Func<AppQuery,AppQuery>, ScrollStrategy, Double, Int32, Boolean, Nullable<TimeSpan>) |
Scroll down until an element that matches the |
ScrollDownTo(Func<AppQuery,AppWebQuery>, String, ScrollStrategy, Double, Int32, Boolean, Nullable<TimeSpan>) |
Scroll down until an element that matches the |
ScrollDownTo(String, String, ScrollStrategy, Double, Int32, Boolean, Nullable<TimeSpan>) |
Scroll down until an element that matches the |
ScrollTo(String, String, ScrollStrategy, Double, Int32, Boolean, Nullable<TimeSpan>) |
Scroll until an element that matches the |
ScrollUp(Func<AppQuery,AppQuery>, ScrollStrategy, Double, Int32, Boolean) |
Scrolls up on the first element matching query. |
ScrollUp(String, ScrollStrategy, Double, Int32, Boolean) |
Scrolls up on the first element matching query. |
ScrollUpTo(Func<AppQuery,AppQuery>, Func<AppQuery,AppQuery>, ScrollStrategy, Double, Int32, Boolean, Nullable<TimeSpan>) |
Scroll up until an element that matches the |
ScrollUpTo(Func<AppQuery,AppWebQuery>, Func<AppQuery,AppQuery>, ScrollStrategy, Double, Int32, Boolean, Nullable<TimeSpan>) |
Scroll up until an element that matches the |
ScrollUpTo(Func<AppQuery,AppWebQuery>, String, ScrollStrategy, Double, Int32, Boolean, Nullable<TimeSpan>) |
Scroll up until an element that matches the |
ScrollUpTo(String, String, ScrollStrategy, Double, Int32, Boolean, Nullable<TimeSpan>) |
Scroll up until an element that matches the |
SetOrientationLandscape() |
Changes the device (iOS) or current activity (Android) orientation to landscape mode. |
SetOrientationPortrait() |
Changes the device (iOS) or current activity (Android) orientation to portrait mode. |
SetSliderValue(Func<AppQuery,AppQuery>, Double) |
Sets the value of a slider element that matches |
SetSliderValue(String, Double) |
Sets the value of a slider element that matches |
SwipeLeftToRight(Double, Int32, Boolean) |
Performs a left to right swipe gesture. |
SwipeLeftToRight(Func<AppQuery,AppQuery>, Double, Int32, Boolean) |
Performs a left to right swipe gesture on an element matched by 'query'. |
SwipeLeftToRight(Func<AppQuery,AppWebQuery>, Double, Int32, Boolean) |
Performs a left to right swipe gesture on an element matched by 'query'. |
SwipeLeftToRight(String, Double, Int32, Boolean) |
Performs a left to right swipe gesture on the matching element. If multiple elements are matched, the first one will be used. |
SwipeRightToLeft(Double, Int32, Boolean) |
Performs a right to left swipe gesture. |
SwipeRightToLeft(Func<AppQuery,AppQuery>, Double, Int32, Boolean) |
Performs a right to left swipe gesture on an element matched by 'query'. |
SwipeRightToLeft(Func<AppQuery,AppWebQuery>, Double, Int32, Boolean) |
Performs a right to left swipe gesture on an element matched by 'query'. |
SwipeRightToLeft(String, Double, Int32, Boolean) |
Performs a right to left swipe gesture on the matching element. If multiple elements are matched, the first one will be used. |
Tap(Func<AppQuery,AppQuery>) |
Performs a tap / touch gesture on the matched element. If multiple elements are matched, the first one will be used. |
Tap(Func<AppQuery,AppWebQuery>) |
Performs a tap / touch gesture on the matched element. If multiple elements are matched, the first one will be used. |
Tap(String) |
Performs a tap / touch gesture on the matched element. If multiple elements are matched, the first one will be used. |
TapCoordinates(Single, Single) |
Performs a tap / touch gesture on the given coordinates. |
TouchAndHold(Func<AppQuery,AppQuery>) |
Performs a continuous touch gesture on the matched element. If multiple elements are matched, the first one will be used. |
TouchAndHold(String) |
Performs a continuous touch gesture on the matched element. If multiple elements are matched, the first one will be used. |
TouchAndHoldCoordinates(Single, Single) |
Performs a continuous touch gesture on the given coordinates. |
WaitFor(Func<Boolean>, String, Nullable<TimeSpan>, Nullable<TimeSpan>, Nullable<TimeSpan>) |
Generic wait function that will repeatly call the |
WaitForElement(Func<AppQuery,AppQuery>, String, Nullable<TimeSpan>, Nullable<TimeSpan>, Nullable<TimeSpan>) |
Wait function that will repeatly query the app until a matching element is found. Throws a TimeoutException if no element is found within the time limit. |
WaitForElement(Func<AppQuery,AppWebQuery>, String, Nullable<TimeSpan>, Nullable<TimeSpan>, Nullable<TimeSpan>) |
Wait function that will repeatly query the app until a matching element is found. Throws a TimeoutException if no element is found within the time limit. |
WaitForElement(String, String, Nullable<TimeSpan>, Nullable<TimeSpan>, Nullable<TimeSpan>) |
Wait function that will repeatly query the app until a matching element is found. Throws a TimeoutException if no element is found within the time limit. |
WaitForNoElement(Func<AppQuery,AppQuery>, String, Nullable<TimeSpan>, Nullable<TimeSpan>, Nullable<TimeSpan>) |
Wait function that will repeatly query the app until a matching element is no longer found. Throws a TimeoutException if the element is visible at the end of the time limit. |
WaitForNoElement(Func<AppQuery,AppWebQuery>, String, Nullable<TimeSpan>, Nullable<TimeSpan>, Nullable<TimeSpan>) |
Wait function that will repeatly query the app until a matching element is no longer found. Throws a TimeoutException if the element is visible at the end of the time limit. |
WaitForNoElement(String, String, Nullable<TimeSpan>, Nullable<TimeSpan>, Nullable<TimeSpan>) |
Wait function that will repeatly query the app until a matching element is no longer found. Throws a TimeoutException if the element is visible at the end of the time limit. |