Job Description :

iOS Automation Engineer

Location: Bentonville, AR

C2H


An iOS automation engineer proficient with the XCUI framework using Swift language to develop and maintain the automated tests for an eComm initiative customer facing iOS application:

Required Skills:

  • Swift Programming Language: Proficiency in Swift is essential as XCUI tests are written in Swift. Understanding Swift syntax, data types, control flow, and object-oriented programming principles is crucial.
  • iOS Development: Familiarity with iOS app development concepts, such as UIKit, App lifecycle, View Controllers, and Storyboards, is important for understanding the structure of iOS applications.
  • XCUI Framework: In-depth knowledge of XCUI framework, which is Apple's native UI testing framework, is fundamental. This includes understanding its APIs for interacting with UI elements, handling gestures, assertions, and managing test execution flow.
  • Automated Testing Principles: Understanding of automated testing concepts such as test case design, test data management, test execution, and reporting is necessary for writing effective and maintainable tests.
  • Xcode IDE: Proficiency in using Xcode IDE for iOS app development and test automation is necessary. This includes understanding project setup, code navigation, debugging, and version control integration.
  • UI Testing Best Practices: Awareness of best practices for UI test automation, such as creating reliable and maintainable tests, avoiding flakiness, and optimizing test execution speed.
  • Continuous Integration/Continuous Deployment (CI/CD): Knowledge of CI/CD pipelines and integration of UI tests into the CI/CD process using tools like Jenkins, Travis CI, XRAY JIRA Integration or GitLab CI is a must.
  • Version Control Systems: Familiarity with version control systems like Git for managing test code repositories, branching, merging, and collaboration with other team members.
  • Problem-Solving Skills: Ability to analyze and debug issues encountered during test automation, including identifying root causes and proposing solutions.
  • Communication Skills: Effective communication skills are important for collaborating with developers, QA engineers, and other stakeholders to understand requirements, report bugs, and discuss test results.
  • Agile Methodologies: Understanding of Agile software development methodologies, such as Scrum or Kanban, and ability to work within Agile teams to deliver high-quality software incrementally.
  • Attention to Detail: Thoroughness in test case design, execution, and reporting to ensure comprehensive test coverage and accurate bug identification.
  • Adaptability: Ability to adapt to changing project requirements, technology stacks, and team dynamics in a fast-paced development environment.
  • Requirement: Bachelor's degree in Computer Science or related field or equivalent combination of industry-related professional experience and education
             

Similar Jobs you may be interested in ..