Update Page object tools to XCUIT mode by TikhomirovSergey · Pull Request #545 · appium/java-client

@TikhomirovSergey

Change list

  • new annotation io.appium.java_client.pagefactory.iOSXcuitFindBy was provided
  • supporting tools were actualized

Types of changes

  • No changes in production code.
  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

Details

It was done because users still can need to support old automation (for iOS < 10) and xCuit mode for the same test scope.

@TikhomirovSergey

- new annotations were provided
- supporting tools were actualized

SrinivasanTarget


@Retention(RetentionPolicy.RUNTIME) @Target({ElementType.FIELD, ElementType.TYPE})
@Repeatable(iOSXcuitFindBySet.class)
public @interface iOSXcuitFindBy {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this be iOSXCUITFindBy please?

SrinivasanTarget

import java.lang.annotation.Target;

@Retention(RetentionPolicy.RUNTIME) @Target({ElementType.FIELD, ElementType.TYPE})
public @interface iOSXcuitFindBySet {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here too iOSXCUITFindBySet ?

SrinivasanTarget

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just naming conventions rest looks good to me.

* @return an array of {@link io.appium.java_client.pagefactory.iOSXcuitFindBy} which builds a sequence of
* the chained searching for elements or a set of possible locators
*/
iOSXcuitFindBy[] value();

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here too.

@TikhomirovSergey

SrinivasanTarget