Video description
2.5 Hours of Video Training
Continuous Delivery (CD) is an agile practice that’s had a big impact on how many people think about developing software. It forced us to start thinking that software is only “done” when it is released. With more features reaching the done stage sooner, CD practices have enabled us to get early feedback from users and taught us a lot about testing, monitoring, and automating our delivery along the way. But mobile development has often been left behind. Or has it?
Testing is an important component of CD and shouldn’t be taken for granted or ignored, especially when developing mobile applications for iOS. The process of setting up a testable environment and writing tests, however, can be a challenge. Implementing unit tests and following principles of test-driven development (TDD) for mobile apps–whether native or hybrid–is often counterintuitive. To guarantee that each component in your mobile app works properly for the set of inputs you expect, it is important to test each component (or unit) of an architecture independently and to simulate different system states based on the supplied input to the test, while covering exotic cases in the process.
In Test-Driven Development for iOS: Using Continuous Integration and Continuous Delivery, ThoughtWorks Lead Consultant Cassie Shum takes a deep dive into the critical role of TDD in mobile development for iOS. This video quickly reviews CI/CD best practices and the role of CI/CD in mobile development. The video then focuses on the role of TDD, demonstrating the iOS testing framework Quick/Nimble. The video concludes by demonstrating fastlane, an automation tool for mobile developers.
About the Instructor
Cassie Shum, a Lead Consultant with ThoughtWorks, has been leading and working primarily in a variety of mobile projects and other technologies, including Domain Driven design and Microservices. For the past six years she has been involved in many different web and mobile applications that follow continuous delivery practices. She is also one of the leaders in the initiative to organize the women’s group in ThoughtWorks, and is also involved in promoting more female speakers in technology.
Twitter: @cassiend
Skill Level
Intermediate
Learning Objectives
- Provides an overview of the role of agile development practices and CI/CD in mobile development
- Shows how to choose the most appropriate framework for your organization and architecture
- Covers native and hybrid app development and how to choose and implement best tools when you are building apps for iOS
- Walks through real-world examples that illustrate trade-offs architects and developers need to address
Who Should Take This Course?
Software developers and architects who are interested in applying CI/CD practices to mobile development.
Table of Contents
Introduction
Lesson 1: Continuous Delivery
Lesson 2: TDD and the Testing Pyramid
Lesson 3: iOS Testing Framework: Quick/Nimble
Lesson 4: Using fastlane
Summary
About LiveLessons Video Training
The LiveLessons Video Training series publishes hundreds of hands-on, expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. This professional and personal technology video series features world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, IBM Press, Pearson IT Certification, Prentice Hall, Sams, and Que. Topics include: IT Certification, Programming, Web Development, Mobile Development, Home and Office Technologies, Business and Management, and more. View all LiveLessons on InformIT at: http://www.informit.com/livelessons.
Table of Contents
Introduction
Test-Driven Development for iOS LiveLessons Video Training: Using Continuous Integration and Continuous Delivery: Introduction
00:01:13
Lesson 1: Continuous Delivery
1.1 Continuous delivery overview
00:03:22
1.2 Benefits of continuous delivery
00:03:48
1.3 Evolution of mobile development
00:05:36
Lesson 2: TDD and the Testing Pyramid
2.1 Test mobile applications
00:09:32
2.2 Continuous integration
00:04:17
2.3 The testing pyramid
00:05:16
2.4 A simple application: acceptance tests, integration tests, and unit tests
00:05:59
2.5 What is test-driven development?
00:09:43
2.6 Red, green, refactor
00:06:25
Lesson 3: iOS Testing Framework: Quick/Nimble
3.1 Why Quick/Nimble?
00:08:04
3.2 Demo with Quick/Nimble
00:22:42
Lesson 4: Using Fastlane
4.1 Why fastlane?
00:06:09
4.2 Demo with fastlane
00:27:00
4.3 Tools for fastlane
00:05:33
4.4 Demo of fastlane running with Jenkins
00:13:13
Summary
Test-Driven Development for iOS LiveLessons Video Training: Using Continuous Integration and Continuous Delivery: Summary
00:01:15