Are you interested in testing? Are you ready to learn the best practices and principles to use great iOS testing tools in your projects? Join us for this 2 day hands on testing workshop!
In an industry of increasingly sophisticated iOS apps, business fortunes are dependant upon increasingly complex software. How do we get our apps right early, and keep them working as intended?
Testing is an essential part of the Agile software development process and in recent years the tools supporting testing on iOS have evolved to become some of the best in the industry. You will learn over this two day hands on workshop how to use these tools with the best practices and principles to use them well.
These skills provide an essential foundation for the modern iOS developer to craft iOS apps that are high quality, regression & bug free as-well as a pleasure to code and work with; not just for the first few weeks, but for months and even years.
Learn how to:
• Answer the question “can we submit?” in seconds not days
• Write maintainable tests that help you build Apps that get better not worse
• What to test and (just as importantly) what not to test in iOS
• Understand different considerations when testing Obj-C v Swift code
• Use tests to improve and change existing legacy code
• Spot and avoid common testing anti-patterns
• Understand acceptance testing and the role it plays in Agile software development
• Use Acceptance tests to drive more efficient development
• Work with FitNesse (an open source Wiki and acceptance testing framework)
• Automate tests using continuous integration and Xcode bots
• Apply effectively Unit Tests, Acceptance Tests and UI Tests on iOS
TDD and XCTest
An introduction to TDD and the XCTest framework
Understanding Mocks, Stubs and Fakes
Considerations for testing in Swift v Obj-C
Code Coverage reporting with Xcode and Xcode Bots
Testing Best Practices
Fundamental principles of writing testable code
Refactoring legacy code through tests
Writing defect driven tests
An introduction to the role of acceptance testing in Agile software development
Acceptance testing on iOS using FitNesse (an open source Wiki and acceptance testing framework)
Working with distributed Acceptance tests within a team
An introduction to Clean Architecture to facilitate simpler, easier tests.
User Interface Testing and Automation
An introduction to User Interface testing with UIAutomation and XCTest
Test coverage reporting and automation of tests with Xcode Bots
For developers of all abilities who are interested in furthering their skills with an improved understanding of best practices in TDD, BDD and Automation testing on iOS.
A working knowledge of Xcode and iOS development in Swift or Obj-C