Xamarin.UITest Represents a running Android application. Main entry point for creating Android applications. Should not be called directly but instead be invoked through the use of . The app configuration. Should be generated from . Queries view objects using the fluent API. Defaults to only return view objects that are visible. Entry point for the fluent API to specify the element. If left as null returns all visible view objects. An array representing the matched view objects. Queries web view objects using the fluent API. Defaults to only return view objects that are visible. Entry point for the fluent API to specify the element. If left as null returns all visible view objects. An array representing the matched view objects. Queries view objects values using the fluent API. Entry point for the fluent API to specify the element. If left as null returns all visible view objects. An array containing the values of the matched view objects. Invokes Javascript on view objects using the fluent API. Entry point for the fluent API to specify the elements. An array of strings representing the results. 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. Entry point for the fluent API to specify the elements. If left as null flashes all visible view objects. An array representing the matched view objects. Enters text into the currently focused element. The text to enter. Enters text into a matching element that supports it. Entry point for the fluent API to specify the element. The text to enter. Enters text into a matching element that supports it. Entry point for the fluent API to specify the element. The text to enter. Clears text from a matching element that supports it. Entry point for the fluent API to specify the element. Clears text from a matching element that supports it. Entry point for the fluent API to specify the element. Clears text from the currently focused element. Performs a tap / touch gesture on the matched element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs a tap / touch gesture on the matched element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs a tap / touch gesture on the given coordinates. The x coordinate to tap. The y coordinate to tap. Performs a continuous touch gesture on the matched element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs a continuous touch gesture on the given coordinates. The x coordinate to touch. The y coordinate to touch. > Performs a long touch on an item, followed by dragging the item to a second item and dropping it The query of the item to be dragged"> The query of the location for the item to be droppedThe placement of the drop (on top, above, below, left, right) relative to the to queryTime to hold on the from queryTime to hold above the to queryThe number of steps desired to drag the item, higher for a slower dragAction to perform after each step Performs two quick tap / touch gestures on the matched element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs two quick tap / touch gestures on the matched element. If multiple elements are matched, the first one will be used. This version is specifically for queries on web views Entry point for the fluent API to specify the element. Performs a quick double tap / touch gesture on the given coordinates. The x coordinate to touch. The y coordinate to touch. Performs a pinch gestures on the matched element to zoom the view in. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. The duration of the pinch gesture. Performs a pinch gestures to zoom the view in on the given coordinates. The x coordinate of the center of the pinch. The y coordinate of the center of the pinch. The duration of the pinch gesture. Performs a pinch gestures on the matched element to zoom the view out. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. The duration of the pinch gesture. Performs a pinch gestures to zoom the view in on the given coordinates. The x coordinate of the center of the pinch. The y coordinate of the center of the pinch. The duration of the pinch gesture. Performs a continuous drag gesture between 2 points. The x coordinate to start dragging from. The y coordinate to start dragging from. The x coordinate to drag to. The y coordinate to drag to. Performs a right to left swipe gesture. Performs a left to right swipe gesture. Scrolls up on the first element matching query. Entry point for the fluent API to specify the what element to scroll within. Strategy for scrolling element. Scrolls down on the first element matching query. Entry point for the fluent API to specify the what element to scroll within. Strategy for scrolling element. Scrolls left on the first element matching query. Entry point for the fluent API to specify the what element to scroll within. Strategy for scrolling element. Scrolls right on the first element matching query. Entry point for the fluent API to specify the what element to scroll within. Strategy for scrolling element. Scroll up until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element. The to wait before failing. Scroll up until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element. The to wait before failing. Scroll down until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element. The to wait before failing. Scroll down until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element. The to wait before failing. Scroll left until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element. The to wait before failing. Scroll left until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element. The to wait before failing. Scroll right until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element. The to wait before failing. Scroll right until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element. The to wait before failing. Scroll the matching element so that its bottom child element is visible. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the elements. Strategy for scrolling element. The to wait before failing. Scroll the matching element so that its top child element is visible. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the elements.Strategy for scrolling element.The to wait before failing. Scroll the matching element so that its rightmost child element is visible. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the elements. Strategy for scrolling element. The to wait before failing. Scroll the matching element so that its leftmost child element is visible. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the elements.Strategy for scrolling element.The to wait before failing. Scroll until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element. The to wait before failing. Scroll until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Strategy for scrolling element. The to wait before failing. Presses the back button of the device. Presses the volume up button on the device. Presses the volume down button on the device. Presses the menu button of the device. Presses the enter key in the app. Presses the user action in the app. Use Action action, if null then the default action for the focused element is used. Hides keyboard if present Changes the device orientation to portrait mode. Changes the device orientation to landscape mode. Generic wait function that will repeatly call the predicate function until it returns true. Throws a if the predicate is not fullfilled within the time limit. Predicate function that should return true when waiting is complete. The message used in the . The to wait before failing. The to wait between each call to the predicate. The final to wait after the predicate returns true. Wait function that will repeatly query the app until a matching element is found. Throws a if no element is found within the time limit. Entry point for the fluent API to specify the element. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element has been found. An array representing the matched view objects. Wait function that will repeatly query the app until a matching element is no longer found. Throws a if the element is visible at the end of the time limit. Entry point for the fluent API to specify the element. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element is no longer visible. Wait function that will repeatly query the app until a matching element is found. Throws a if no element is found within the time limit. Entry point for the fluent API to specify the element. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element has been found. An array representing the matched view objects. Wait function that will repeatly query the app until a matching element is no longer found. Throws a if the element is visible at the end of the time limit. Entry point for the fluent API to specify the element. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element is no longer visible. Takes a screenshot of the app in it's current state. This is used to denote test steps in the Xamarin Test Cloud. The title of screenshot, used as step name. The screenshot file. Contains helper methods for outputting the result of queries instead of resorting to . Starts an interactive REPL (Read-Eval-Print-Loop) for app exploration and pauses test execution until it is closed. Invokes a method on the app's main activity. For Xamarin apps, methods must be exposed using attributes as shown below. Android example in activity: [Export] public string MyInvokeMethod(string arg) { return "uitest"; } The name of the method to invoke. The argument to pass to the method. The result of the invocation. Contains runtime information about the currently running device. Runtime information and control of the currently running device. Runtime information and control of the currently running device. Allows HTTP access to the test server running on the device. Queries view objects using the fluent API. Defaults to only return view objects that are visible. Marked selector to match. See for more information. An array representing the matched view objects. Highlights the results of the query by making them flash. Specify view elements using marked string. Marked selector to match. See for more information. An array representing the matched view objects. Enters text into a matching element that supports it. Marked selector to match. See for more information. The text to enter. Clears text from a matching element that supports it. Marked selector to match. See for more information. Performs a tap / touch gesture on the matched element. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. Performs a continuous touch gesture on the matched element. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. Performs two quick tap / touch gestures on the matched element. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. Performs a pinch gestures on the matched element to zoom the view in. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. The duration of the pinch gesture. Performs a pinch gestures on the matched element to zoom the view out. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. The duration of the pinch gesture. Wait function that will repeatly query the app until a matching element is no longer found. Throws a if the element is visible at the end of the time limit. Marked selector to match. See for more information. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element is no longer visible. Wait function that will repeatly query the app until a matching element is found. Throws a if no element is found within the time limit. Marked selector to match. See for more information. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element has been found. An array representing the matched view objects. Performs a long touch on an item, followed by dragging the item to a second item and dropping it Marked selector for the item to be dragged. See for more information. Marked selector for the location for the item to be dropped. See for more information. The placement of the drop (on top, above, below, left, right) relative to the to query Time to hold on the from query Time to hold above the to query The number of steps desired to drag the item, higher for a slower drag Action to perform after each step Scrolls up on the first element matching query. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. Scrolls down on the first element matching query. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. Scrolls left on the first element matching query. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. Scrolls right on the first element matching query. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. Scroll up until an element that mactches the toMarked is shown on the screen. Marked selector to select what element to bring on screen. See for more information. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll up until an element that mactches the toMarked is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll down until an element that mactches the toMarked is shown on the screen. Marked selector to select what element to bring on screen. See for more information. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll down until an element that mactches the toMarked is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll left until an element that mactches the toMarked is shown on the screen. Marked selector to select what element to bring on screen. See for more information. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll left until an element that mactches the toMarked is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll right until an element that mactches the toMarked is shown on the screen. Marked selector to select what element to bring on screen. See for more information. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll right until an element that mactches the toMarked is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll the matching element so that its bottom child element is visible. If multiple elements are matched, the first one will be used. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll the matching element so that its top child element is visible. If multiple elements are matched, the first one will be used. Marked selector to select what element to scroll within. See for more information.Strategy for scrolling element.The to wait before failing. Scroll the matching element so that its rightmost child element is visible. If multiple elements are matched, the first one will be used. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll the matching element so that its leftmost child element is visible. If multiple elements are matched, the first one will be used. Marked selector to select what element to scroll within. See for more information.Strategy for scrolling element.The to wait before failing. Scroll until an element that mactches the toMarked is shown on the screen. Marked selector to select what element to bring on screen. See for more information. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Represents runtime information about the currently running device. Creates a new instance. The uri of the device. The running apk file. The uri of the device. The currently running apk file. Runtime information and control of device. The uri of the device. The identifier of the device. Change GPS location of the device. Shared configuration for apps. Not to be used directly, should be created by using the fluent API. Enable debug logging. The ip adress of the device. The port to use for communication with the test server. Enable screenshots. Local screenshots are disabled by default to speed up tests. The Xamarin Test Cloud api key to use for activation. Specify the location of the log directory for local test runs. The IDE integration mode. Decides what settings to use in case of both explicit configuration and active IDE integration. Whether to disables automatic screenshot generation after each SpecFlow step. The desired state of the app after test initialization. Either the test framework can start the app or connect to an already running app in more advanced scenarios. Start the app after successful configuration. Use the given configuration to connect to an already running app. Main entry point for Xamarin.UITest. This is a fluent API that allows you to configure your app for either Android or iOS and start it. Configures the ip address of the device. Generally best left unset unless you are running an iOS application on a physical device. The ip address of the device. Configures the port of the device. Generally best left unset. The port of the Calabash HTTP server on the device. Specifies that the app is an iOS app. Specifies that the app is an Android app. Enables debug logging from the test runner. Can be used on static methods to register for notifications immediately after an app instance has been started. Valid parameters: - Zero arguments - One argument of type . - One argument of type . - One argument of type . Runtime information and control of device. The uri of the device. The identifier of the device. Change GPS location of the device. Represents runtime information about the currently running app / device. The uri of the device. Whether the current test is running on a phone. Whether the current test is running on a tablet. Runtime information and control of device. The uri of the device. The identifier of the device. Change GPS location of the device. Whether the current test is running on a phone. Whether the current test is running on a tablet. Provides access to the test server running on the device for advanced scenarios. Performs an HTTP POST request to the test server. The path of the request, which will be appended on the uri of the test server. An object that will be serialized as json and posted to the test server. The body of the the reponse. Performs an HTTP PUT request to the test server. The path of the request, which will be appended on the uri of the test server. The byte[] data to put. The body of the the reponse. Performs an HTTP GET request to the test server. The path of the request, which will be appended on the uri of the test server. The body of the the reponse. A fluent API for making test output easier. Mirrored query methods from the app classes that print directly to . Prints all the visible view elements to . Prints the view elements matched by query to . Entry point for the fluent API to specify the element. If left as null returns all visible view objects. Prints the view elements matched by query to . Entry point for the fluent API to specify the element. If left as null returns all visible view objects. Prints the properties matched by query to . Entry point for the fluent API to specify the property. Prints a tree of the visible view elements. Output to console in color instead of default logger. Representation of a view element in the app. Initializes a new instance of the class. The identifier of the view element. For Android: The id of the element. For iOS: The accessibilityIdentifier of the element. A platform specific text representation of the view element. The rectangle representing the elements position and size. The label of the view element. For Android: Empty For iOS: The accessibilityLabel of the element. The text of the view element. The class of the view element. Whether the element is enabled or not. Representation of a view elements position and size. The width of the element. The height of the element. The X coordinate of the top left corner of the element. The Y coordinate of the top left corner of the element. The X coordinate of the center of the element. The Y coordinate of the center of the element. The center y. Returns a that represents the current . Fluent query API for specifying view elements predicates for web elements. Initial constructor for web element queries. Should not be called directly, but used as part of the fluent API in the app classes. The tokens of the existing . The query target platform. The additional tokens to add. The tokens of the current query. Matches the nth element of the currently matched elements. The zero-based index of the element to match. Converts the string into it's Calabash query equivalent. Representation of a web elements position and size. The width of the element. The height of the element. The X coordinate of the center of the element. The Y coordinate of the center of the element." The top property of the element. The bottom property of the element. The left property of the element. The right property of the element. The X property of the element, unit is screen coordinates The Y property of the element, unit is screen coordinates Representation of a web element in the app. The HTML id of the element. The node type of the element. The tag name of the element. The CSS class of the element. The raw HTML of the element. The form value of the element. A platform specific text representation of the containing web view. The text content of the element. The rectangle representing the elements position and size. Helper interface for exposing property from the fluent query API without cluttering the fluent API itself (when using explicit interface implementation). Helper interface for exposing property from the fluent query API without cluttering the fluent API itself (when using explicit interface implementation). The query parameters. The app query. The value of the query was explicitly requested. Fluent query API for invoking javascipt on Webviews. Initial constructor. Should not be called directly, but used as part of the fluent API in the app classes. The tokens of the current query. Representation of a view elements position and size. The width of the element. The height of the element. The X coordinate of the top left corner of the element. The Y coordinate of the top left corner of the element. The X coordinate of the center of the element. The Y coordinate of the center of the element. The center y. Fluent query API for specifying view elements predicates for properties. Initial constructor for property queries. Should not be called directly, but used as part of the fluent API in the app classes. The query target platform. The existing to build on. The name of the property to filter on. Matches properties starting with the given text. The text to match. Matches properties ending with the given text. The text to match. Matches properties containing with the given text. The text to match. Matches properties like the given text. Supports * wildcards. The text to match. Matches properties matching the given predicate and text. Allows using unexposed Calabash predicates. The Calabash predicate to use. The text to match. Extracts the value of the property. The expected result type of the property. The target platform of the query. Useful when writing extensions methods for queries for platform differences. Represents a running iOS application. Main entry point for creating iOS applications. Should not be called directly but instead be invoked through the use of . The app configuration. Should be generated from . Queries view objects using the fluent API. Defaults to only return view objects that are visible. Entry point for the fluent API to specify the element. If left as null returns all visible view objects. An array representing the matched view objects. Queries web view objects using the fluent API. Defaults to only return view objects that are visible. Entry point for the fluent API to specify the element. If left as null returns all visible view objects. An array representing the matched view objects. Queries properties on view objects using the fluent API. Entry point for the fluent API to specify the type of the property. The type of the property. Queries view objects using the fluent API. Defaults to only return view objects that are visible. Entry point for the fluent API to specify the element. If left as null returns all visible view objects. An array representing the matched view objects. 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. Entry point for the fluent API to specify the elements. If left as null flashes all visible view objects. An array representing the matched view objects. Enters text into the currently focused element. Will fail if no keyboard is visible. The text to enter. Enters text into a matching element that supports it. Entry point for the fluent API to specify the element. The text to enter. Enters text into a matching element that supports it. Entry point for the fluent API to specify the element. The text to enter. Clears text from a matching element that supports it. Entry point for the fluent API to specify the element. Clears text from the currently focused element. Presses the enter key in the app. Changes the device orientation to portrait mode. Changes the device orientation to landscape mode. Performs a tap / touch gesture on the matched element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs a tap / touch gesture on the matched element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs a tap / touch gesture on the given coordinates. The x coordinate to tap. The y coordinate to tap. Performs a right to left swipe gesture. Performs a left to right swipe gesture. Performs a right to left swipe gesture on the matching element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs a left to right swipe gesture on the matching element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Scroll until an element that mactches the toMarked is shown on the screen. Marked selector to select what element to bring on screen. See for more information. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Performs a continuous touch gesture on the matched element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs a continuous touch gesture on the given coordinates. The x coordinate to touch. The y coordinate to touch. Performs two quick tap / touch gestures on the matched element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs a quick double tap / touch gesture on the given coordinates. The x coordinate to touch. The y coordinate to touch. Performs a tap / touch gestures with 2 fingers on the matched element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs a tap / touch gesture with 2 fingers on the given coordinates. The x coordinate to touch. The y coordinate to touch. Performs a quick continuous flick gesture between 2 points. The x coordinate to start from. The y coordinate to start from. The x coordinate to end at. The y coordinate to end at. Performs a continuous drag gesture between 2 points. The x coordinate to start from. The y coordinate to start from. The x coordinate to end at. The y coordinate to end at. Performs a continuous drag gesture between 2 points. The x coordinate to start from. The y coordinate to start from. The x coordinate to end at. The y coordinate to end at. The duration of the pan gesture. Performs a pinch gestures on the matched element to zoom the view in. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. The duration of the pinch gesture. Performs a pinch gestures to zoom the view in on the given coordinates. The x coordinate of the center of the pinch. The y coordinate of the center of the pinch. The duration of the pinch gesture. Performs a pinch gestures on the matched element to zoom the view out. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. The duration of the pinch gesture. Performs a pinch gestures to zoom the view in on the given coordinates. The x coordinate of the center of the pinch. The y coordinate of the center of the pinch. The duration of the pinch gesture. Dismisses the keyboard if present Presses the volume up button on the device. Presses the volume down button on the device. Sends the app to background for the specified time span. The time for the app to be in the background. Generic wait function that will repeatly call the predicate function until it returns true. Throws a if the predicate is not fullfilled within the time limit. Predicate function that should return true when waiting is complete. The message used in the . The to wait before failing. The to wait between each call to the predicate. The final to wait after the predicate returns true. Wait function that will repeatly query the app until a matching element is found. Throws a if no element is found within the time limit. Entry point for the fluent API to specify the element. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element has been found. An array representing the matched view objects. Wait function that will repeatly query the app until a matching element is no longer found. Throws a if the element is visible at the end of the time limit. Entry point for the fluent API to specify the element. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element is no longer visible. Wait function that will repeatly query the app until a matching element is found. Throws a if no element is found within the time limit. Entry point for the fluent API to specify the element. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element has been found. An array representing the matched view objects. Wait function that will repeatly query the app until a matching element is no longer found. Throws a if the element is visible at the end of the time limit. Entry point for the fluent API to specify the element. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element is no longer visible. Takes a screenshot of the app in it's current state. This is used to denote test steps in the Xamarin Test Cloud. The title of screenshot, used as step name. The screenshot file. Contains helper methods for outputting the result of queries instead of resorting to . Starts an interactive REPL (Read-Eval-Print-Loop) for app exploration and pauses test execution until it is closed. Invokes a method on the app's app delegate. For Xamarin apps, methods must be exposed using attributes as shown below. iOS example in app delegate: [Export("myInvokeMethod:")] public NSString MyInvokeMethod(NSString arg) { return new NSString("uitest"); } The name of the method to invoke. The argument to pass to the method. The result of the invocation. Invokes raw UIA javascript. The automation script. The result of the script. Obsolete, use Device instead. Contains runtime information about the currently running device. Runtime information and control of the currently running device. Navigate back on the device. Allows HTTP access to the test server running on the device. Runtime information and control of the currently running device. Queries view objects using the fluent API. Defaults to only return view objects that are visible. Marked selector to match. See for more information. An array representing the matched view objects. Highlights the results of the query by making them flash. Specify view elements using marked string. Marked selector to match. See for more information. An array representing the matched view objects. Enters text into a matching element that supports it. Marked selector to match. See for more information. The text to enter. Clears text from a matching element that supports it. Marked selector to match. See for more information. Performs a tap / touch gesture on the matched element. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. Performs a continuous touch gesture on the matched element. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. Performs two quick tap / touch gestures on the matched element. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. Performs a pinch gestures on the matched element to zoom the view in. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. The duration of the pinch gesture. Performs a pinch gestures on the matched element to zoom the view out. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. The duration of the pinch gesture. Wait function that will repeatly query the app until a matching element is no longer found. Throws a if the element is visible at the end of the time limit. Marked selector to match. See for more information. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element is no longer visible. Wait function that will repeatly query the app until a matching element is found. Throws a if no element is found within the time limit. Marked selector to match. See for more information. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element has been found. An array representing the matched view objects. Performs a right to left swipe gesture on the matching element. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. Performs a left to right swipe gesture on the matching element. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. Scrolls up on the first element matching query. Entry point for the fluent API to specify the what element to scroll within. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically Scrolls up on the first element matching query. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically Scrolls down on the first element matching query. Entry point for the fluent API to specify the what element to scroll within. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically Scrolls down on the first element matching query. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically Scroll up until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically The to wait before failing. Scroll up until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically The to wait before failing. Scroll up until an element that mactches the toMarked is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically The to wait before failing. Scroll up until an element that mactches the toMarked is shown on the screen. Marked selector to select what element to bring on screen. See for more information. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically The to wait before failing. Scroll down until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically The to wait before failing. Scroll down until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically The to wait before failing. Scroll down until an element that mactches the toMarked is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically The to wait before failing. Scroll down until an element that mactches the toMarked is shown on the screen. Marked selector to select what element to bring on screen. See for more information. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically The to wait before failing. Performs a tap / touch gestures with 2 fingers on the matched element. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. Represents the iOS specific part of the fluent API. Should not be used directly. Part of the fluent API. Should not be used directly. Enables debug logging from the test runner. Sets the Xamarin Test Cloud api key to use for activation. This can also be set using: * An in Properties/AssemblyInfo.cs. * Setting an environment variable named XTC_API_KEY * Creating a file named xtc-api-key in any upstream directory from the test The Xamarin Test Cloud api key. Enables local screenshot saving. Always enabled in the cloud. Always uses settings from IDE if they're present, overriding other configured values. If not set, explicit configuration will disable IDE integration. Configures the ip address of the device. Generally best left unset unless you are running an iOS application on a physical device. The ip address of the device. Configures the port of the device. Generally best left unset. The port of the Calabash HTTP server on the device. Sets the directory to store local log files in The full path of the directory to store local log files in Disables automatic screenshot generation after each SpecFlow step. Configures the app bundle to use. Will force a run on simulator. Path to the directory containing the app bundle. Configures the zipped app bundle to use. Will force a run on simulator. Path to the directory containing the zipped app bundle. Configures the installed app to use. Will force a run on physical device. The bundle id of the installed application. Configures the device to use with the device identifier (UUID). The device identifier (UUID) found in the XCode Organizer. Configures the default wait times for the framework. An implementation providing defaults. Builds the configuration and launches the app on the selected device or simulator. The app data mode. Whether to clear app data or not before app launch. Currently only supported in Xamarin Test Cloud. The to use in the tests. Builds the configuration and connects to an already running app. Used for advanced scenarios. Regular users should use instead. The to use in the tests. Builds the iOS app configuration which can be used for input for . The and methods should be used instead unless you have specific needs for the configuration. The start action for the configuration. See and methods. The app data mode. Whether to clear app data or not before app launch. Currently only supported in Xamarin Test Cloud. An which can used for input for . Represents the Android specific part of the fluent API. Should not be used directly. Part of the fluent API. Should not be used directly. Enables debug logging from the test runner. Enables local screenshot saving. Always enabled in the cloud. Always uses settings from IDE if they're present, overriding other configured values. If not set, explicit configuration will disable IDE integration. Disables automatic screenshot generation after each SpecFlow step. Configures the ip address of the device. Generally best left unset unless you are running an iOS application on a physical device. The ip address of the device. Configures the port of the device. Generally best left unset. The port of the Calabash HTTP server on the device. Sets the Xamarin Test Cloud api key to use for activation. This can also be set using: * An in Properties/AssemblyInfo.cs. * Setting an environment variable named XTC_API_KEY * Creating a file named xtc-api-key in any upstream directory from the test The Xamarin Test Cloud api key. Sets the directory to store local log files in The full path of the directory to store local log files in Configures the adb serial of the device. Generally best left unset unless you want to run a specific device. The device serial from adb devices. Configures the keystore that the provided apk file is signed with. A keystore is not required, but will ensure that the apk file is pristine and unchanged. If a keystore is provided, it will be used to sign the auxiliary apks installed along with the app on the device. If a keystore is not provided, Xamarin.UITest will generate a keystore and resign the apk. Path to the keystore file. Password to the keystore. Corresponds to the -storepass argument in jarsigner. Password to the matching private key in the keystore. Corresponds to the -keypass argument in jarsigner. Alias to the key in the keystore. Corresponds to the alias argument in jarsigner. Configures the signing info file that the test server will be "signed" with. A signing info file is not required, but can be used instead of a keystore for signing the test server. The signing info file can be freely shared without the risk of leaking keying material. The signing info file can be generated using the console tool. Path to the signing info file. Configures the apk file to use. Path to the apk file. Configures the already installed app to use. Package name of the installed app. Configures the default wait times for the framework. An implementation providing defaults. Builds the configuration and launches the app on the selected device. The app data mode. Whether to clear app data or not before app launch. The to use in the tests. Builds the configuration and connects to an already running app. Used for advanced scenarios. Regular users should use instead. The to use in the tests. Builds the Android app configuration which can be used for input for . The and methods should be used instead unless you have specific needs for the configuration. The start action for the configuration. See and methods. The app data mode. Whether to clear app data or not before app launch. An which can used for input for . Represents the generic specific part of the fluent API. Should not be used directly. Enables debug logging from the test runner. Enables local screenshot saving. Always enabled in the cloud. Always uses settings from IDE if they're present, overriding other configured values. If not set, explicit configuration will disable IDE integration. Specifies that the app is an iOS app. Specifies that the app is an Android app. Sets the Xamarin Test Cloud api key to use for activation. This can also be set using: * An in Properties/AssemblyInfo.cs. * Setting an environment variable named XTC_API_KEY * Creating a file named xtc-api-key in any upstream directory from the test The Xamarin Test Cloud api key. Configures the ip address of the device. Generally best left unset unless you are running an iOS application on a physical device. The ip address of the device. Configures the port of the device. Generally best left unset. The port of the Calabash HTTP server on the device. Sets the directory to store local log files in The full path of the directory to store local log files in Disables automatic screenshot generation after each SpecFlow step. Builds the generic app configuration which contains the shared configuration across platforms. The or properties should be used instead as part of the fluent API unless the configuration is needed. An to be consumed by the platform specific configurations. Configuration for Android apps. Not to be used directly, should be created by using the fluent API. The location of the keystore that was used to sign the tested app. If left empty a new keystore will be built. The store password of the given keystore. Corresponds to the -storepass argument in jarsigner. The private key password of the given keystore key. Corresponds to the -keypass argument in jarsigner. The key alias to use for given keystore. Corresponds to the alias argument in jarsigner. The location of the SI file used for generating the signed test server. The location of the apk file to test. The package name of the installed app. Enable debug logging. The Xamarin Test Cloud api key to use for activation. The desired state of the app after test initialization. Either the test framework can start the app or connect to an already running app in more advanced scenarios. Whether to clear app data or not. The uri of the device test server. The configured ip address. Use DeviceUri for the active configuration. The configured ip address. The configured port. Use DeviceUri for the active configuration. The configured ip address. The serial of the device. Can be found using adb. Enable screenshots. Local screenshots are disabled by default to speed up tests. Specify the specific launchable activity to use Specify the location of the log directory for local test runs. Verifies the configuration. Default wait times. The IDE integration mode. Decides what settings to use in case of both explicit configuration and active IDE integration. Whether to disables automatic screenshot generation after each SpecFlow step. Attribute to set your Xamarin Test Cloud api key for activation. Add the following to your Properties/AssemblyInfo.cs file. [assembly: Xamarin.UITest.TestCloudApiKey(YOUR_API_KEY)] Creates an instance. A Xamarin Test Cloud api key. The Xamarin Test Cloud api key. Fluent query API for specifying view elements to match for queries and gestures. Initial constructor for queries. Should not be called directly, but used as part of the fluent API in the app classes. The query target platform. Constructor for adding more tokens to an existing query in an immutable fashion. Takes the tokens from the old query plus the additional tokens. The existing query. The new query tokens. Matches a button. For Android: An element that has class (or inherits from) android.widget.Button. For iOS: An element with class UIButton. Optional argument for matching using marked classification. See for more. Matches a TextField. For Android: An element that has class (or inherits from) android.widget.EditText. For iOS: An element with class UITextField. Optional argument for matching using marked classification. See for more. Matches a Switch. For Android: An element that inherits from android.widget.CompoundButton. For iOS: An element with class UISwitch. Optional argument for matching using marked classification. See for more. Matches element class. For Android (no '.' in className): An element that has a class name of the given value (case insensitive). For Android ('.'s in className): An element which has a class (or super class) fully qualified name that matches the value. For iOS (first char lowercase): An element that has the class (or super class) name of the given value prepended with "UI". Example: button becomes UIButton. For iOS (first char uppercase): An element that has the class (or super class) name of the given value. The class name to match. Matches element class. For Android (no '.' in className): An element that has a class name of the given value (case insensitive). For Android ('.'s in className): An element which has a class (or super class) fully qualified name that matches the value. For iOS: An element that has the class (or super class) name of the given value. The class name to match. Matches common values. For Android: An element with the given value as either id, contentDescription or text. For iOS: An element with the given value as either accessibilityLabel or accessibilityIdentifier. The value to match. Matches element id. For Android: An element with the given value as id. For iOS: An element with the given value as accessibilityIdentifier. The value to match. Changes the query to return sibling elements of the currently matched ones. Optional class name of elements to match. Changes the query to return the n'th sibling element of the currently matched ones. The zero-based index of the sibling to return. Changes the query to return descendant elements of the currently matched ones. Optional class name of elements to match. Changes the query to return the n'th descendant element of the currently matched ones. The zero-based index of the descendant to return. Changes the query to return parent elements of the currently matched ones. Optional class name of elements to match. Changes the query to return the n'th parent element of the currently matched ones. The zero-based index of the parent to return. Changes the query to return child elements of the currently matched ones. Optional class name of elements to match. Changes the query to return the n'th child element of the currently matched ones. The zero-based index of the child to return. Changes the query to return all elements instead of just the visible ones. Optional class name of elements to match. Matches element text. The value to match. Matches the nth element of the currently matched elements. The zero-based index of the element to match. Matches WebViews Matches the nth WebView The zero-based index of the webview to return. A raw Calabash selector. Allows for string based Calabash queries. The Calabash query to match. A raw Calabash selector. Allows for string based Calabash queries. The Calabash query to match. A raw argument to pass to the Calabash query. A raw Calabash selector. Allows for string based Calabash queries. The Calabash query to match. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw Calabash selector. Allows for string based Calabash queries. The Calabash query to match. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw Calabash selector. Allows for string based Calabash queries. The Calabash query to match. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw Calabash selector. Allows for string based Calabash queries. The Calabash query to match. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw Calabash selector. Allows for string based Calabash queries. The Calabash query to match. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. A raw argument to pass to the Calabash query. Invokes a method on the view elements matched by the query. Can be chained to invoke methods on the results. The name of the method. Invokes a method on the view elements matched by the query. Can be chained to invoke methods on the results. The name of the method. The 1st parameter. Invokes a method on the view elements matched by the query. Can be chained to invoke methods on the results. The name of the method. The 1st parameter. The 2nd parameter. Invokes a method on the view elements matched by the query. Can be chained to invoke methods on the results. The name of the method. The 1st parameter. The 2nd parameter. The 3rd parameter. Invokes a method on the view elements matched by the query. Can be chained to invoke methods on the results. The name of the method. The 1st parameter. The 2nd parameter. The 3rd parameter. The 4th parameter. Invokes a method on the view elements matched by the query. Can be chained to invoke methods on the results. The name of the method. The 1st parameter. The 2nd parameter. The 3rd parameter. The 4th parameter. The 5th parameter. Invokes javascript on the view elements matched by the query. If view elements other than WebViews are encountered, the execution will halt and an Exception will be thrown. The javascript to invoke on the views Matches elements in web views matching the given css selector. Must be used on web view elements. If used alone, will default to android.webkit.WebView for Android and UIWebView for iOS. The css selector to match. Matches elements in web views matching the given XPath selector. Must be used on web view elements. If used alone, will default to android.webkit.WebView for Android and UIWebView for iOS. The css selector to match. Matches a property or getter method value on the element. The name of the property. The value to match. Matches a property or getter method value on the element. The name of the property. The value to match. Matches a property or getter method value on the element. The name of the property. The value to match. Allows for further filtering on a given property value. The name of the property. The target platform of the query. Useful when writing extensions methods for queries for platform differences. Converts the string into it's Calabash query equivalent. Representation of the different platforms a query can be targettet at. The Android platform. The iOS platform. Represents the main gateway to interact with an app. This interface contains shared functionality between and . Queries view objects using the fluent API. Defaults to only return view objects that are visible. Entry point for the fluent API to specify the element. If left as null returns all visible view objects. An array representing the matched view objects. Queries view objects using the fluent API. Defaults to only return view objects that are visible. Marked selector to match. See for more information. An array representing the matched view objects. Queries web view objects using the fluent API. Defaults to only return view objects that are visible. Entry point for the fluent API to specify the element. If left as null returns all visible view objects. An array representing the matched view objects. Queries properties on view objects using the fluent API. Entry point for the fluent API to specify the type of the property. The type of the property. Invokes Javascript on view objects using the fluent API. Entry point for the fluent API to specify the elements. An array of strings representing the results. 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. Entry point for the fluent API to specify the elements. If left as null flashes all visible view objects. An array representing the matched view objects. Highlights the results of the query by making them flash. Specify view elements using marked string. Marked selector to match. See for more information. An array representing the matched view objects. Enters text into the currently focused element. The text to enter. Enters text into a matching element that supports it. Entry point for the fluent API to specify the element. The text to enter. Enters text into a matching element that supports it. Marked selector to match. See for more information. The text to enter. Enters text into a matching element that supports it. Entry point for the fluent API to specify the element. The text to enter. Clears text from a matching element that supports it. Entry point for the fluent API to specify the element. Clears text from a matching element that supports it. Marked selector to match. See for more information. Clears text from the currently focused element. Presses the enter key in the app. Hides keyboard if present Performs a tap / touch gesture on the matched element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs a tap / touch gesture on the matched element. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. Performs a tap / touch gesture on the matched element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs a tap / touch gesture on the given coordinates. The x coordinate to tap. The y coordinate to tap. Performs a continuous touch gesture on the matched element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs a continuous touch gesture on the matched element. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. Performs a continuous touch gesture on the given coordinates. The x coordinate to touch. The y coordinate to touch. Performs two quick tap / touch gestures on the matched element. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. Performs two quick tap / touch gestures on the matched element. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. Performs a quick double tap / touch gesture on the given coordinates. The x coordinate to touch. The y coordinate to touch. Performs a pinch gestures on the matched element to zoom the view in. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. The duration of the pinch gesture. Performs a pinch gestures on the matched element to zoom the view in. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. The duration of the pinch gesture. Performs a pinch gestures to zoom the view in on the given coordinates. The x coordinate of the center of the pinch. The y coordinate of the center of the pinch. The duration of the pinch gesture. Performs a pinch gestures on the matched element to zoom the view out. If multiple elements are matched, the first one will be used. Entry point for the fluent API to specify the element. The duration of the pinch gesture. Performs a pinch gestures on the matched element to zoom the view out. If multiple elements are matched, the first one will be used. Marked selector to match. See for more information. The duration of the pinch gesture. Performs a pinch gestures to zoom the view in on the given coordinates. The x coordinate of the center of the pinch. The y coordinate of the center of the pinch. The duration of the pinch gesture. Generic wait function that will repeatly call the predicate function until it returns true. Throws a if the predicate is not fullfilled within the time limit. Predicate function that should return true when waiting is complete. The message used in the . The to wait before failing. The to wait between each call to the predicate. The final to wait after the predicate returns true. Wait function that will repeatly query the app until a matching element is found. Throws a if no element is found within the time limit. Entry point for the fluent API to specify the element. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element has been found. An array representing the matched view objects. Wait function that will repeatly query the app until a matching element is found. Throws a if no element is found within the time limit. Marked selector to match. See for more information. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element has been found. An array representing the matched view objects. Wait function that will repeatly query the app until a matching element is found. Throws a if no element is found within the time limit. Entry point for the fluent API to specify the element. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element has been found. An array representing the matched view objects. Wait function that will repeatly query the app until a matching element is no longer found. Throws a if the element is visible at the end of the time limit. Entry point for the fluent API to specify the element. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element is no longer visible. Wait function that will repeatly query the app until a matching element is no longer found. Throws a if the element is visible at the end of the time limit. Marked selector to match. See for more information. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element is no longer visible. Wait function that will repeatly query the app until a matching element is no longer found. Throws a if the element is visible at the end of the time limit. Entry point for the fluent API to specify the element. The message used in the . The to wait before failing. The to wait between each query call to the app. The final to wait after the element is no longer visible. Takes a screenshot of the app in it's current state. This is used to denote test steps in the Xamarin Test Cloud. The title of screenshot, used as step name. The screenshot file. Performs a left to right swipe gesture. Performs a right to left swipe gesture. Scrolls up on the first element matching query. Entry point for the fluent API to specify the elements. Strategy for scrolling element Scrolls up on the first element matching query. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. Scrolls down on the first element matching query. Entry point for the fluent API to specify the what element to scroll within. Strategy for scrolling element. Scrolls down on the first element matching query. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. Scroll until an element that mactches the toMarked is shown on the screen. Marked selector to select what element to bring on screen. See for more information. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll up until an element that mactches the toMarked is shown on the screen. Marked selector to select what element to bring on screen. See for more information. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll up until an element that mactches the toMarked is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll down until an element that mactches the toMarked is shown on the screen. Marked selector to select what element to bring on screen. See for more information. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll down until an element that mactches the toMarked is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Marked selector to select what element to scroll within. See for more information. Strategy for scrolling element. The to wait before failing. Scroll up until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically The to wait before failing. Scroll up until an element that mactches the toQuery is shown on the screen. Entry point for the fluent API to specify the element to bring on screen. Entry point for the fluent API to specify what element to scroll within. Strategy for scrolling element, Ignored for IOS, will always use ScrollStrategy.Programmatically The to wait before failing. Changes the device orientation to portrait mode. Changes the device orientation to landscape mode. Contains helper methods for outputting the result of queries instead of resorting to . Starts an interactive REPL (Read-Eval-Print-Loop) for app exploration and pauses test execution until it is closed. Device information and Control Navigate back on the device. Presses the volume up button on the device. Presses the volume down button on the device. Allows HTTP access to the test server running on the device. 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: [Export] public string MyInvokeMethod(string arg) { return "uitest"; } iOS example in app delegate: [Export("myInvokeMethod:")] public NSString MyInvokeMethod(NSString arg) { return new NSString("uitest"); } The name of the method to invoke. The argument to pass to the method. The result of the invocation. Performs a continuous drag gesture between 2 points. The x coordinate to start dragging from. The y coordinate to start dragging from. The x coordinate to drag to. The y coordinate to drag to. A query token. Part of a query for matching view elements for queries and gestures. Converts the query token to a Calabash query string. The target query platform. A valid Calabash query string. Returns a string representation of the code representing the query. Used for output. A string representation of the query code. Helper interface for exposing tokens from the fluent query API without cluttering the fluent API itself (when using explicit interface implementation). The tokens of the current query. Configuration for iOS apps. Not to be used directly, should be created by using the fluent API. Enable debug logging. Enable screenshots. Local screenshots are disabled by default to speed up tests. Specify the location of the log directory for local test runs. The uri of the device test server. The configured ip address. Use DeviceUri for the active configuration. The configured ip address. The configured port. Use DeviceUri for the active configuration. The configured ip address. The device identifier. List of know devices can be found by running "instruments -s devices" The bundle id of an already installed to test. The location of an app bundle for a simulator test. The location of a zip archive for a simulator test. The desired state of the app after test initialization. Either the test framework can start the app or connect to an already running app in more advanced scenarios. Verify the state of a configuration. Throw exception if invalid. Default wait times. The Xamarin Test Cloud api key to use for activation. The IDE integration mode. Decides what settings to use in case of both explicit configuration and active IDE integration. Whether to clear app data or not. Whether to disables automatic screenshot generation after each SpecFlow step. Starts a connection with an IDE that may be ready to provide additional services for running a UITest session. Full path to the test assembly Target test platform: iOS, Android true, if there is an IDE listening that can handle this test run session, false otherwise. The connection string Instructs the IDE to prepare the test application for execution, which can include deploying it to the device or simulator Interface that is used to build fluent interfaces and hides methods declared by from IntelliSense. Code that consumes implementations of this interface should expect one of two things: When referencing the interface from within the same solution (project reference), you will still see the methods this interface is meant to hide.When referencing the interface through the compiled output assembly (external reference), the standard Object methods will be hidden as intended. See http://bit.ly/ifluentinterface for more information. Redeclaration that hides the method from IntelliSense. Redeclaration that hides the method from IntelliSense. Redeclaration that hides the method from IntelliSense. Redeclaration that hides the method from IntelliSense. Contains runtime information about the current test environment. Provides the current runtime platform. Useful for complicated test setup scenarios. Determines at runtime whether the current test run is in the Xamarin Test Cloud. Enum containing the various different test platforms. A local test run. An Android test run in the Xamarin Test Cloud. An iOS test run in the Xamarin Test Cloud. Fluent query API for specifying the type in property and invoke result. type Constructor for selectors. Should not be called directly, but used as part of the fluent API in the Property class and for Invoke. The query for property The parameters passed to the query. The tokens of the current query. The value of the query was explicitly requested. Converts the string into it's Calabash query equivalent. Invokes a method on the view elements matched by the query. Can be chained to invoke methods on the results. The name of the method. Invokes a method on the view elements matched by the query. Can be chained to invoke methods on the results. The name of the method. The 1st parameter. Invokes a method on the view elements matched by the query. Can be chained to invoke methods on the results. The name of the method. The 1st parameter. The 2nd parameter. Invokes a method on the view elements matched by the query. Can be chained to invoke methods on the results. The name of the method. The 1st parameter. The 2nd parameter. The 3rd parameter. Invokes a method on the view elements matched by the query. Can be chained to invoke methods on the results. The name of the method. The 1st parameter. The 2nd parameter. The 3rd parameter. The 4th parameter. Invokes a method on the view elements matched by the query. Can be chained to invoke methods on the results. The name of the method. The 1st parameter. The 2nd parameter. The 3rd parameter. The 4th parameter. The 5th parameter. Extracts the result of the query as a given type. The expected result type of the query. Used to provide information required to run a test suite When set to False it means that the application preparation failed for some reason. The reason is provided in the ErrorMessage property. Message that explains why the test suite can't be executed (when CanExecute == False) The error message. When set to True it means that the test application is already deployed and UITest doesn't have to do it ErrorMessage property. Package to be installed. It overrides the ApkFile or AppBundle option. To be used only if TestAppDeployed==false. The serial of the device to use for testing The app package name (Android), or the bundle id (iOS) Location of the Android keystore. If not set, UITest will use the default global keystore. Only for Android. Key store alias. Only for Android. Key store password. Only for Android. The key password. Only for Android. Contains default wait times for the framework to use. Time for the framework to wait when using the WaitFor methods. Time for the framework to wait for elements when performing gestures. Class for requesting the raw json from the framework. Constructs an instance of the RawJson class. The json contents. The contained json. Performs an HTTP POST request to the test server. The path of the request, which will be appended on the uri of the test server. An object that will be serialized as json and posted to the test server. The body of the the reponse. Performs an HTTP GET request to the test server. The path of the request, which will be appended on the uri of the test server. The body of the the reponse. Performs an HTTP PUT request to the test server. The path of the request, which will be appended on the uri of the test server. The byte[] data to put. The body of the the reponse. Default wait times when using the REPL. Time for the framework to wait when using the WaitFor methods. Time for the framework to wait for elements when performing gestures. Strategy for scrolling Use any combination of Programmatically and Gesture when trying to scroll. Biased towards Programmatically Scroll programmatically, will not mimic real user interactions, but are as fast as possible. Scroll using gestures, tries to mimic user interaction as closely as possible. User actions that can be sent to android applications The normal action. The unspecified action. The none action. The go action. The search action. The send action. The next action. The done action. The previous action. IDE integration mode. Decides what settings to use in case of both explicit configuration and active IDE integration. Prefers any explicit configuration choices made by the user as part of configuration. Prefers IDE integration settings if it is active. Enum for controlling whether or not to clear app data. Default behavior depending on platform. Always clear app data. Never clear app data.