Skip to content

Commit 864c2ed

Browse files
Update CI scripts (appium#1157)
1 parent 1aac740 commit 864c2ed

12 files changed

Lines changed: 142 additions & 149 deletions

File tree

.travis.yml

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -16,26 +16,8 @@ matrix:
1616
components:
1717
- extra-android-support
1818
- sys-img-armeabi-v7a-android-24
19-
before_install:
20-
- curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash
21-
- nvm install 8
22-
- node --version
23-
- npm --version
24-
- npm install -g $appiumVersion
25-
- echo y | android update sdk -a --no-ui --filter android-24
26-
- echo y | android update sdk -a --no-ui --filter sys-img-armeabi-v7a-android-24
27-
- android list targets | grep -E '^id:' | awk -F '"' '{$1=""; print $2}' # list all targets
28-
- echo no | android create avd --force -n test -t android-24 --abi armeabi-v7a
29-
- emulator -avd test -no-skin -no-window &
30-
- android-wait-for-emulator
31-
- adb shell input keyevent 82 &
32-
- adb wait-for-device get-serialno
33-
- sleep 100
34-
- chmod +x gradlew
35-
- ./gradlew --version
36-
- echo y |adb devices
3719
script:
38-
- ./gradlew clean build uiAutomationTest -x test -x signArchives
20+
- ./gradlew clean build -x signArchives -x test -x checkstyleTest
3921

4022
before_cache:
4123
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock

azure-pipelines.yml

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,26 @@
44
# https://docs.microsoft.com/azure/devops/pipelines/languages/java
55

66
pool:
7-
vmImage: 'macOS 10.13'
7+
vmImage: 'macOS 10.14'
88

99
variables:
1010
ANDROID_EMU_NAME: test
1111
ANDROID_EMU_ABI: x86
1212
ANDROID_EMU_TARGET: android-27
13+
ANDROID_EMU_TAG: google_apis
14+
XCODE_VERSION: 10.2
15+
IOS_PLATFORM_VERSION: 12.2
16+
IOS_DEVICE_NAME: iPhone X
1317

1418
steps:
1519
- task: NodeTool@0
1620
inputs:
17-
versionSpec: '8.x'
21+
versionSpec: '11.x'
1822

1923
- script: |
2024
echo "Configuring Environment"
21-
echo "y" | $ANDROID_HOME/tools/bin/sdkmanager --install 'system-images;$(ANDROID_EMU_TARGET);google_apis;$(ANDROID_EMU_ABI)'
22-
echo "no" | $ANDROID_HOME/tools/bin/avdmanager create avd -n "$(ANDROID_EMU_NAME)" -k 'system-images;$(ANDROID_EMU_TARGET);google_apis;$(ANDROID_EMU_ABI)' --force
25+
echo "y" | $ANDROID_HOME/tools/bin/sdkmanager --install 'system-images;$(ANDROID_EMU_TARGET);$(ANDROID_EMU_TAG);$(ANDROID_EMU_ABI)'
26+
echo "no" | $ANDROID_HOME/tools/bin/avdmanager create avd -n "$(ANDROID_EMU_NAME)" -k 'system-images;$(ANDROID_EMU_TARGET);$(ANDROID_EMU_TAG);$(ANDROID_EMU_ABI)' --force
2327
echo $ANDROID_HOME/emulator/emulator -list-avds
2428
2529
echo "Starting emulator"
@@ -29,14 +33,17 @@ steps:
2933
$ANDROID_HOME/platform-tools/adb devices
3034
echo "Emulator started"
3135
36+
sudo xcode-select -s /Applications/Xcode_$(XCODE_VERSION).app/Contents/Developer
37+
xcrun simctl list
38+
3239
npm config delete prefix
33-
npm config set prefix $NVM_DIR/versions/node/v8.12.0
40+
npm config set prefix $NVM_DIR/versions/node/`node --version`
41+
node --version
42+
3443
npm install -g appium@beta
3544
appium --version
36-
node --version
45+
3746
java -version
38-
which node
39-
npm root -g
4047
4148
- task: Gradle@2
4249
inputs:
@@ -47,4 +54,4 @@ steps:
4754
jdkArchitectureOption: 'x64'
4855
publishJUnitResults: true
4956
tasks: 'build'
50-
options: 'xcuiTest uiAutomationTest -x test -x signArchives'
57+
options: 'xcuiTest uiAutomationTest -x checkstyleTest -x test -x signArchives'

google-style.xml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -159,11 +159,6 @@
159159
</module>
160160
<module name="OverloadMethodsDeclarationOrder"/>
161161
<module name="VariableDeclarationUsageDistance"/>
162-
<module name="CustomImportOrder">
163-
<property name="specialImportsRegExp" value="com.google"/>
164-
<property name="sortImportsInGroupAlphabetically" value="true"/>
165-
<property name="customImportOrderRules" value="STATIC###SPECIAL_IMPORTS###THIRD_PARTY_PACKAGE###STANDARD_JAVA_PACKAGE"/>
166-
</module>
167162
<module name="MethodParamPad"/>
168163
<module name="OperatorWrap">
169164
<property name="option" value="NL"/>

src/test/java/io/appium/java_client/android/SettingTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
package io.appium.java_client.android;
22

3-
import static org.junit.Assert.assertEquals;
4-
53
import io.appium.java_client.Setting;
64
import org.junit.Test;
75

86
import java.time.Duration;
97

8+
import static org.junit.Assert.assertEquals;
9+
1010
public class SettingTest extends BaseAndroidTest {
1111

1212
@Test public void ignoreUnimportantViewsTest() {

src/test/java/io/appium/java_client/appium/element/generation/BaseElementGenerationTest.java

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,19 @@
33
import static org.junit.Assert.assertEquals;
44

55
import io.appium.java_client.AppiumDriver;
6-
import io.appium.java_client.service.local.AppiumServiceBuilder;
6+
import io.appium.java_client.service.local.AppiumDriverLocalService;
77
import org.junit.After;
88
import org.openqa.selenium.By;
99
import org.openqa.selenium.Capabilities;
1010
import org.openqa.selenium.WebElement;
11-
import org.openqa.selenium.remote.DesiredCapabilities;
1211

1312
import java.util.function.BiPredicate;
1413
import java.util.function.Supplier;
1514

1615
public class BaseElementGenerationTest {
1716
protected AppiumDriver<?> driver;
17+
private AppiumDriverLocalService service;
18+
1819
protected final BiPredicate<By, Class<? extends WebElement>> commonPredicate = (by, aClass) -> {
1920
WebElement element = driver.findElement(by);
2021
assertEquals(element.getClass(), aClass);
@@ -23,19 +24,24 @@ public class BaseElementGenerationTest {
2324

2425
@After
2526
public void tearDown() {
26-
if (driver != null) {
27-
driver.quit();
27+
try {
28+
if (driver != null) {
29+
driver.quit();
30+
}
31+
if (service != null) {
32+
service.stop();
33+
}
34+
} finally {
35+
driver = null;
36+
service = null;
2837
}
29-
driver = null;
3038
}
3139

32-
protected boolean check(Supplier<DesiredCapabilities> serverCapabilitiesSupplier,
33-
Supplier<Capabilities> clientCapabilitiesSupplier,
40+
protected boolean check(Supplier<Capabilities> capabilitiesSupplier,
3441
BiPredicate<By, Class<? extends WebElement>> filter,
3542
By by, Class<? extends WebElement> clazz) {
36-
AppiumServiceBuilder builder = new AppiumServiceBuilder()
37-
.withCapabilities(serverCapabilitiesSupplier.get());
38-
driver = new AppiumDriver<>(builder, clientCapabilitiesSupplier.get());
43+
service = AppiumDriverLocalService.buildDefaultService();
44+
driver = new AppiumDriver<>(service, capabilitiesSupplier.get());
3945
return filter.test(by, clazz);
4046
}
4147

src/test/java/io/appium/java_client/appium/element/generation/android/AndroidElementGeneratingTest.java

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -21,50 +21,50 @@ public class AndroidElementGeneratingTest extends BaseElementGenerationTest {
2121

2222
private final File app = new File(new File("src/test/java/io/appium/java_client"),
2323
"ApiDemos-debug.apk");
24-
private final Supplier<DesiredCapabilities> serverCapabilitiesSupplier = () -> {
24+
private final Supplier<DesiredCapabilities> commonCapabilitiesSupplier = () -> {
2525
DesiredCapabilities serverCapabilities = new DesiredCapabilities();
2626
serverCapabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, MobilePlatform.ANDROID);
2727
serverCapabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "Android Emulator");
2828
serverCapabilities.setCapability(MobileCapabilityType.APP, app.getAbsolutePath());
2929
return serverCapabilities;
3030
};
3131

32-
@Test public void whenAndroidNativeAppIsLaunched() {
33-
assertTrue(check(serverCapabilitiesSupplier, () -> {
34-
DesiredCapabilities clientCapabilities = new DesiredCapabilities();
32+
@Test
33+
public void whenAndroidNativeAppIsLaunched() {
34+
assertTrue(check(() -> {
35+
DesiredCapabilities clientCapabilities = commonCapabilitiesSupplier.get();
3536
clientCapabilities.setCapability(MobileCapabilityType.FULL_RESET, true);
3637
clientCapabilities.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT, 60);
3738
return clientCapabilities;
3839
}, commonPredicate, AndroidUIAutomator("new UiSelector().clickable(true)"),
39-
AndroidElement.class));
40+
AndroidElement.class));
4041
}
4142

42-
@Test public void whenAndroidHybridAppIsLaunched() {
43-
assertTrue(check(serverCapabilitiesSupplier, () -> {
44-
DesiredCapabilities clientCapabilities = new DesiredCapabilities();
43+
@Test
44+
public void whenAndroidHybridAppIsLaunched() {
45+
assertTrue(check(() -> {
46+
DesiredCapabilities clientCapabilities = commonCapabilitiesSupplier.get();
4547
clientCapabilities.setCapability(AndroidMobileCapabilityType.APP_PACKAGE, "io.appium.android.apis");
4648
clientCapabilities.setCapability(AndroidMobileCapabilityType.APP_ACTIVITY, ".view.WebView1");
4749
return clientCapabilities;
4850
}, (by, aClass) -> {
49-
driver.context("WEBVIEW_io.appium.android.apis");
50-
return commonPredicate.test(by, aClass);
51-
}, tagName("a"), AndroidElement.class));
51+
driver.context("WEBVIEW_io.appium.android.apis");
52+
return commonPredicate.test(by, aClass);
53+
}, tagName("a"), AndroidElement.class));
5254
}
5355

54-
@Test public void whenAndroidBrowserIsLaunched() {
56+
@Test
57+
public void whenAndroidBrowserIsLaunched() {
5558
assertTrue(check(() -> {
56-
DesiredCapabilities serverCapabilities = new DesiredCapabilities();
57-
serverCapabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, MobilePlatform.ANDROID);
58-
serverCapabilities.setCapability(MobileCapabilityType.BROWSER_NAME, MobileBrowserType.BROWSER);
59-
return serverCapabilities;
60-
}, () -> {
61-
DesiredCapabilities clientCapabilities = new DesiredCapabilities();
62-
clientCapabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "Android Emulator");
63-
return clientCapabilities;
64-
}, (by, aClass) -> {
65-
driver.get("https://www.google.com");
66-
return commonPredicate.test(by, aClass);
67-
}, name("q"), AndroidElement.class));
59+
DesiredCapabilities clientCapabilities = commonCapabilitiesSupplier.get();
60+
clientCapabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, MobilePlatform.ANDROID);
61+
clientCapabilities.setCapability(MobileCapabilityType.BROWSER_NAME, MobileBrowserType.BROWSER);
62+
clientCapabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "Android Emulator");
63+
return clientCapabilities;
64+
}, (by, aClass) -> {
65+
driver.get("https://www.google.com");
66+
return commonPredicate.test(by, aClass);
67+
}, name("q"), AndroidElement.class));
6868
}
6969

7070

0 commit comments

Comments
 (0)