UI Tests are black boxed, so you cant have access to your code.
You can use @testable import
in Unit Tests, so full access will be provided.
When you're running UITests this is not working, because during a UITest your test class cannot access your app's code.
From Apple's Docs:
UI testing differs from unit testing in fundamental ways. Unit testing
enables you to work within your app's scope and allows you to exercise
functions and methods with full access to your app's variables and
state. UI testing exercises your app's UI in the same way that users
do without access to your app's internal methods, functions, and
variables. This enables your tests to see the app the same way a user
does, exposing UI problems that users encounter.
You must achieve everything using .tap()
's on elements. .accessibilityIdentifier
will help you to get the right element
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…