GithubHelp home page GithubHelp logo

moatazeldebsy / appium-server-github-action Goto Github PK

View Code? Open in Web Editor NEW
42.0 5.0 14.0 203 KB

Running Appium Server with GitHub Action to be able to run Appium mobile test automation scripts

License: GNU General Public License v3.0

Dockerfile 66.09% Shell 33.91%
appium appium-android appium-server appium-automation appium-ios appium-tests

appium-server-github-action's Introduction

๐Ÿ‘‹ Hi, I'm Moataz Nabil! Iโ€™m the book author of Mobile DevOps Playbook, currently working as a Manager, Quality Engineering - Automation at Aviv Group, previously worked at Bitrise, Delivery Hero SE and Zalando SE helping mobile engineers to deliver fast, reliable, and secure mobile apps and helping companies to build their developer productivity teams. Bitrise Expert, AWS Community Builder, and Instructor on TestAutomationU and Udemy.

I have over 13 years of experience in software development, test automation, developer productivity, software testing, and service delivery. I am passionate about creating technological solutions that close the loop between software development and service delivery.

Technical Skills ๐Ÿ› ๏ธ

  • Programming Languages: Java, JavaScript, C#, Typescript, Kotlin, Swift
  • Cloud and DevOps Technologies:
    • Cloud Architecture (AWS)
    • DevOps and CI/CD (GitHub Actions, CircleCI, Bitrise)
    • Container Technologies (Docker, Kubernetes)
    • Infrastructure as Code (Terraform)
    • Monitoring and Observability (Datadog)
  • Software Development and Testing
    • Agile Methodologies (Scrum, Kanban)
    • Databases (Microsoft SQL Server, MariaDB)
    • Web Testing (Selenium WebDriver, Playwright, TestCafe)
    • Mobile Testing (Espresso, XCUITest, Maestro, Appium)
    • API Development and Management: Postman, Rest Assured
    • Performance Testing: K6
  • Core Competencies
    • Problem Solving and Analytical Skills
    • Program Management
      • Strategic Planning
      • Risk Management
      • Stakeholder Communication
      • Cross-Functional Team Leadership
  • Technical Advocacy
    • Developer Experience
    • Technical Evangelism and Advocacy
    • Public Speaking and Presentations

Key Projects ๐Ÿ“š

  • The Internet Automation with Playwright and TypeScript: This project is designed to automate the testing of various web functionalities using Playwright in a TypeScript setup. It targets a demo website called The Internet for practicing automation testing.
  • Mobile DevOps Playbook: This is the code repository for Mobile DevOps Playbook, published by Packt.
  • Appium-Server-GitHub-Action: Running Appium Server with GitHub Action to be able to run Appium mobile test automation scripts.
  • parallelize-android-UI-Tests-with-Bitrise: Demo for Parallelize Android UI Tests with Bitrise, Flank and Firebase Test Lab.
  • Espresso-TAU: The demo repository for Espresso course for Test Automation University.
  • TestCafe-TAU: This repo contains the course material for the Test Automation University Course Introduction to E2E Web Testing using TestCafe
  • Appium-TAU: This repo contains the course material for the Test Automation University Course Mobile Testing using Appium and Java.
  • sauce-labs-app-automate-action: A GitHub Action for running Espresso Tests for Android using Sauce Labs Runner

Professional Goals ๐Ÿš€

  • Career Development: Focused on furthering my career in software development, specifically in roles that leverage my leadership experience and technical skills in building impactful tech solutions.
  • Continuous Learning: Committed to ongoing professional development by staying updated with the latest tech trends and advancing my coding skills. ๐Ÿ“ˆ

Connect with Me ๐Ÿ“ฌ

Iโ€™m looking forward to collaborating on projects that are at the intersection of technology and social good. Letโ€™s connect! ๐ŸŒ

Where I publish my content โœ๐Ÿป

Blog posts

appium-server-github-action's People

Contributors

moatazeldebsy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

appium-server-github-action's Issues

Error: Docker build failed with exit code 1

I have tried to build CI Appium using this yml action

name: Appium CI

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:

  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v2
    - name: Install and Run Appium Server
      uses: moatazeldebsy/[email protected]


Actual result : I get Docker build failed and Node version 11.x deprecation warning even using higher version

================================================================================

                          ```

DEPRECATION WARNING

Node.js 11.x is no longer actively supported!

You will not receive security or critical stability updates for this version.

You should migrate to a supported version of Node.js as soon as possible.
Use the installation script that corresponds to the version of Node.js you
wish to install. e.g.

 * https://deb.nodesource.com/setup_10.x โ€” Node.js 10 LTS "Dubnium"
 * https://deb.nodesource.com/setup_12.x โ€” Node.js 12 LTS "Erbium" (recommended)
 * https://deb.nodesource.com/setup_14.x โ€” Node.js 14 LTS "Fermium"
 * https://deb.nodesource.com/setup_15.x โ€” Node.js 15 "Fifteen"

Please see https://github.com/nodejs/Release for details about which
version may be appropriate for you.

The NodeSource Node.js distributions repository contains
information both about supported versions of Node.js and supported Linux
distributions. To learn more about usage, see the repository:
  https://github.com/nodesource/distributions

Docker build failed with exit code 1

Describe the bug
try to use action on CI and have an error "Docker build failed with exit code 1"

Access to the following pieces of information (if you can):
Your distribution, identified as "focal", is not currently supported, please contact NodeSource at https://github.com/nodesource/distributions/issues if you think this is incorrect or would like your distribution to be considered for support

name: publish

on:
  push

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
    - name: checkout
      uses: actions/checkout@v2
    - name: Install and Run Appium Server
      uses: moatazeldebsy/[email protected]

MaxRetryError: HTTPConnectionPool(host='localhost', port=4723):

Stacktrace:
If you would likeParent suite setup failed:
MaxRetryError: HTTPConnectionPool(host='localhost', port=4723): Max retries exceeded with url: /wd/hub/session (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fed378749d0>: Failed to establish a new connection: [Errno 111] Connection refused')) to reach the maintainers of this project, feel free to open this issue and let us know how we can help.

https://github.com/YauheniPo/py-robot-framework-mobile-testing/runs/1140139899?check_suite_focus=true#step:11:15

Android

@BeforeClass
public void setUp() throws MalformedURLException {
DesiredCapabilities caps = new DesiredCapabilities();
caps.setCapability("automationName" , "UiAutomator1");
caps.setCapability("platformName" , "Android");
caps.setCapability("platformVersion" , "7.1.1");
caps.setCapability("deviceName" , "Android Emulator");
caps.setCapability("app" , System.getProperty("user.dir")+"/apps/selendroid-test-app-0.17.0.apk");
driver = new AndroidDriver<>(new URL("http://localhost:4723/wd/hub"), caps);
`}```

Ard

@BeforeClass
public void setUp() throws MalformedURLException {
DesiredCapabilities caps = new DesiredCapabilities();
caps.setCapability("automationName" , "UiAutomator1");
caps.setCapability("platformName" , "Android");
caps.setCapability("platformVersion" , "7.1.1");
caps.setCapability("deviceName" , "Android Emulator");
caps.setCapability("app" , System.getProperty("user.dir")+"/apps/selendroid-test-app-0.17.0.apk");
driver = new AndroidDriver<>(new URL("http://localhost:4723/wd/hub"), caps);
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.