iOS Dev Weekly - iOS Dev Weekly - Issue 625

Running all the tests is for pre-commit hooks and CI only!
 

iOS Dev Weekly

 
View on the Web    Archives

ISSUE 625  September 1st 2023

 
Comment

  Comment  

 

I noticed Mike Gerasimenko’s new XcodeSelectiveTesting library this week, and it set me thinking about how we run tests in Xcode compared to my previous experience with other development environments.

Mike’s library uses Test Plans to reduce the number of tests that need to be executed based on calculating what tests have been affected by the files you’ve changed. Of course, you’ll still want to run your complete test suite regularly, but when tests break, there are real benefits to getting quick feedback, and running fewer tests is a great way to make your tests run faster!

My main experience developing with other languages comes from writing Ruby code, where I found guard invaluable. It’s a tool that runs alongside your editor and runs any affected tests whenever you save any file in your project. It changed how I used tests, as the effects of any changes were instantly apparent, and I still use it every time I need to change a Ruby project.

Compare that to how I work today, where our test suite on you know what takes over two minutes to run. As a result, I run the tests far less often and sometimes only figure out I’ve broken something when CI tells me. 😬

I know it’s early for feature requests for Xcode 16, and I know that with Swift being a compiled language, it won’t be easy to reach the same level of convenience as seeing test results a second or two after saving a file. However, I’d love to see Apple move towards a model that makes what Mike is doing with XcodeSelectiveTesting unnecessary and towards having Xcode give developers constant feedback from test suites.

Dave Verwer  Permalink

 
 

  Sponsored Link  

 

Fast, AI-powered test automation for web and mobile with Testim

We're built to help Agile teams efficiently manage and scale their automation projects. Quickly author AI-stabilized UI and end-to-end tests on real and virtual devices. Learn more about Testim Mobile.

testim.io  Permalink

 
 
 

  News  

 

Special Apple Event

I don't expect much Vision Pro news at this event. Instead, I expect it to focus on the products that fund the development of the Vision Pro and visionOS! 🏦

apple.com  Permalink

 
 

  Tools  

 

Automated accessibility audits in Xcode 15

I love that Xcode 15 allows you to get an accessibility audit from any UI test and report issues as test failures. How? There’s a WWDC video or this post from Pol Piella where he also talks about integrating these tests into your CI process.

polpiella.dev  Permalink

 
 

  Code  

 

Enabling drag reordering in SwiftUI lazy grids and stacks

Do you want the drag and “get the other stuff out of the way and show me where I’m about to drop this thing” (yes, that’s the technical name! 😂) behaviour of SwiftUI’s List for lazy grids and stacks? Daniel Saidi, Kai Zheng, and Roman Mirzoyan have just what you need. This feels like a real community effort!

danielsaidi.com  Permalink

 

Running Code When Your View Appears

Is there a difference between task and onAppear view modifiers when setting up a SwiftUI view’s state? It turns out there is, as Chris Eidhof explains.

eidhof.nl  Permalink

 

Swift Typo Detector

What’s the next step after Manu Herrera’s script to find all of the typos and spelling mistakes in your source code? Unit tests for comments? 💡

manu.show  Permalink

 
 

  Design  

 

Plussing your iOS app

What a great set of tips on “plussing” your app from Sam Gold. The suggestion to colour grade your dark and light views is especially effective, in my experience.

lickability.com  Permalink

 
 

  Business and Marketing  

 

RevenueCat Paywalls

There will always be some apps that need more than a “standard” paywall UI, but what most apps need is to get the basics right. Tell potential customers what they’ll get, explain your pricing, and show a big purchase button. The thing is, it’s so easy to mess it up! You might break an App Store rule or, even worse, make something that doesn’t convert. I love the idea of making this easier, and with support for experiments, too, this looks compelling. I wish Apple had tackled this problem!

For full disclosure, RevenueCat is a regular sponsor of this newsletter, but I found this announcement through their blog’s RSS feed.

revenuecat.com  Permalink

 
 

  Jobs  

 

Software Engineer, macOS @ Raycast – Build something you actually use. Ship every two weeks. No bureaucracy bs. Hack on ideas every Friday. Location-independent salary. Remote, UTC ± 3 hours. – Remote (within European timezones)

 Permalink

 

Is your company hiring? You can still list open positions for free on iOS Dev Jobs.

 Permalink

 
 

  And finally...  

 

The Apple & Grand Theft Auto mashup you didn’t know you needed. 🚨

 Permalink

 
You received this email because you subscribed via the iOS Dev Weekly site.
We'll be sorry to see you go but you can unsubscribe instantly.
 
Shiny Development Ltd. Daresbury Innovation Centre Keckwick Lane Daresbury Cheshire WA4 4FS United Kingdom
 
 

 
 

RSS

 
©2023 iOS Dev Weekly | Privacy Policy | Mastodon | Twitter | Suggest a Link
 
Published with Curated

Older messages

iOS Dev Weekly - Issue 624

Friday, August 25, 2023

How do you keep the files you're working on easily at hand? Here's how I do it. 🚀 View on the Web Archives ISSUE 624 August 25th 2023 Comment It's been a while since I wrote anything

iOS Dev Weekly - Issue 623

Friday, August 18, 2023

Welcome to swift-iOS-Dev-Weekly! 🤣 View on the Web Archives ISSUE 623 August 18th 2023 Comment If you've listened to the last couple of episodes of the Swift Package Index podcast, Swift Package

iOS Dev Weekly - Issue 622

Monday, August 14, 2023

Have you ever considered starting a blog? View on the Web Archives ISSUE 622 August 11th 2023 Comment I recently read this post from Danijela Vrzan on reaching one year of blogging about Swift. She

iOS Dev Weekly - Issue 621

Friday, August 4, 2023

Is it finally time for a quick take on SwiftData? 📸 View on the Web Archives ISSUE 621 August 4th 2023 Comment I've struggled to know what to write about SwiftData since its debut a few weeks ago,

iOS Dev Weekly - Issue 620

Friday, July 28, 2023

Do you want to get a Vision Pro all for yourself, spend a day with one, or have someone else spend time with one for you? 🥽 View on the Web Archives ISSUE 620 July 28th 2023 Comment I won't go into

You Might Also Like

Import AI 399: 1,000 samples to make a reasoning model; DeepSeek proliferation; Apple's self-driving car simulator

Friday, February 14, 2025

What came before the golem? ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

Defining Your Paranoia Level: Navigating Change Without the Overkill

Friday, February 14, 2025

We've all been there: trying to learn something new, only to find our old habits holding us back. We discussed today how our gut feelings about solving problems can sometimes be our own worst enemy

5 ways AI can help with taxes 🪄

Friday, February 14, 2025

Remotely control an iPhone; 💸 50+ early Presidents' Day deals -- ZDNET ZDNET Tech Today - US February 10, 2025 5 ways AI can help you with your taxes (and what not to use it for) 5 ways AI can help

Recurring Automations + Secret Updates

Friday, February 14, 2025

Smarter automations, better templates, and hidden updates to explore 👀 ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

The First Provable AI-Proof Game: Introducing Butterfly Wings 4

Friday, February 14, 2025

Top Tech Content sent at Noon! Boost Your Article on HackerNoon for $159.99! Read this email in your browser How are you, @newsletterest1? undefined The Market Today #01 Instagram (Meta) 714.52 -0.32%

GCP Newsletter #437

Friday, February 14, 2025

Welcome to issue #437 February 10th, 2025 News BigQuery Cloud Marketplace Official Blog Partners BigQuery datasets now available on Google Cloud Marketplace - Google Cloud Marketplace now offers

Charted | The 1%'s Share of U.S. Wealth Over Time (1989-2024) 💰

Friday, February 14, 2025

Discover how the share of US wealth held by the top 1% has evolved from 1989 to 2024 in this infographic. View Online | Subscribe | Download Our App Download our app to see thousands of new charts from

The Great Social Media Diaspora & Tapestry is here

Friday, February 14, 2025

Apple introduces new app called 'Apple Invites', The Iconfactory launches Tapestry, beyond the traditional portfolio, and more in this week's issue of Creativerly. Creativerly The Great

Daily Coding Problem: Problem #1689 [Medium]

Friday, February 14, 2025

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Google. Given a linked list, sort it in O(n log n) time and constant space. For example,

📧 Stop Conflating CQRS and MediatR

Friday, February 14, 2025

​ Stop Conflating CQRS and MediatR Read on: m​y website / Read time: 4 minutes The .NET Weekly is brought to you by: Step right up to the Generative AI Use Cases Repository! See how MongoDB powers your