This is a very confusing reply. Nowhere does OP imply they are unfamiliar with iOS Background Execution Limits.
Are you implying that
"Debug -> Simulate Background Fetch" should be renamed to "Debug -> DO NOT Simulate Background Fetch"?
or maybe Debug -> Simulate Background Fetch on Simulator (remember this is an Xcode.app menu item, not a Simulator.app menu item)
What if the question is re-framed to "How do I execute code, that normally, and by normally I mean may or may not get scheduled, with absolutely no misconceptions about the magical vibe heuristics the conclave uses to schedule said task, right now. Or said another way, how can a developer, that is developing, simulate being scheduled by the all-knowing, wise, beautiful, system scheduler? I'll sign a new agreement that affirms my task is not worthy and volunteer a earliestBeginDate of INFINITE just to get a block ran
The only useful non-slop answer I have found is
set breakpoint after submit()
e -l objc -- (void)[[BGTaskScheduler sharedScheduler] _simulateLaunchForTaskWithIdentifier:@"framework.this.love.i"]
I strongly recommend that you watch WWDC 2020 Session 10063 Background execution demystified. read
https://developer.apple.com/forums/thread/775182 It’s an excellent resource.