Anish Anand Jha who is a Software Test Engineer at Qapitol QA Services Pvt. Ltd took a Session on "iOS App Automation, GitHub and Jenkins integration" at Global Testing Retreat #ATAGTR2019
Please refer our following post for session details:
https://atablogs.agiletestingalliance.org/2019/12/04/global-testing-retreat-atagtr2019-welcomes-anish-anand-jha-as-our-esteemed-speaker/
2. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
A. What is Continuous Integration and Continuous Delivery?
B. Setting up iOS automation project on macOS
C. Installing Jenkins on mac OS and its use
D. Creating webhooks with GitHub
E. Opening local server with ngrok
F. Creating a basic Jenkins job for doing action after pushing a commit
Key Learnings
3. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
A. Continuous Integration and Continuous Delivery
4. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
B. iOS Automation Project on macOS
Installation and Setup using Terminal:
5. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
B. iOS Automation Project on macOS (Continued…)
Cloning WebDriverAgent Project and Setup for XCode Integration:
6. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
B. iOS Automation Project on macOS (Continued…)
• Open
WebDriverAgent.xcodeproj
• Select Target
WebDriverAgentLib (Manage
code sign in)
• Select Product > Build
Repeat last two steps for
WebDriverAgentRunner
• Build WebDriverAgent
7. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
C. Jenkins on macOS
8. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
• Create a new private
repository in GitHub
• Create a webhook on
GitHub > Project >Settings >
Webhooks > add webhook
• In Payload URL field,
add Jenkins url:
http://localhost:8080
D. Webhooks with GitHub
9. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
Installation and setup: http://bit.ly/ngrok-setup
Using Terminal Run Command: $ ./ngrok http 8080
E. Local server with ngrok
Change Payload URL: http://localhost:8080
to https://end_point/github-webhook/
10. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
F. Jenkins Job
• Open browser and set http://localhost:8080
• Select new item on the left menu > custom name
for the job
11. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
F. Jenkins Job (Continued…)
• ‘Build Triggers’ tab > check ‘GitHub
hook trigger for GITScm polling’
• ‘Source Code Management’ tab > Set git project credentials
• ‘Branch Specifier > To change the ‘master’ branch
12. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
F. Jenkins Job (Continued…)
• Click on Schedule button painted in
red arrow.
• Build > Add Build step > Execute Shell
• Apply and Save
13. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
F. Jenkins Job (Continued…)
• Make a commit and push changes >
the new Build on jenkins Build history
• Select Console output
14. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
• https://medium.com/livefront/basic-continuous-integration-with-jenkins-xcode-and-github-e999673e73b4
• https://medium.com/@litoarias/continous-integration-continous-delivery-for-ios-with-jenkins-and-fastlane-
fd2906956b20
• https://www.raywenderlich.com/1774995-continuous-integration-with-github-fastlane-jenkins
• https://www.softwaretestingmaterial.com/setting-mobile-automation-project-macos/
• https://developer.github.com/webhooks/
• https://dzone.com/articles/learn-how-to-setup-a-cicd-pipeline-from-scratch
• https://www.edureka.co/blog/jenkins-pipeline-tutorial-continuous-delivery
• https://ngrok.com/
References
15. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
Demo Session
16. #ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial
channels(Provided due credit is given to me/us)
Questions & Answers
&
Thank YouContacts:
Anish Anand Jha
Qapitol QA [P] Ltd.
Mobile: +91 9724433556
Email: anish.a@qapitol.com