Automation Tips for React Native App Development
- To identify elements on both iOS and Android platforms, we should assign “testID” and “accessibilityLabel” to every view in react native.
- We can assign “testID” and “accessibilityLabel” as string literals but it is better to store them in a separate .JS file and access it from the .JS file, So all the automation IDs
reside in one place. - You can create a separate .JS file and store all automation IDs like follows:
export default (automationIds = { password: 'Password', userName: 'USER NAME', emailAddress: 'EMAIL ADDRESS', nameTextField: 'nameTextField', });
- You can import the your automationIds JS file as follows :
import automationIds from '../../appConfig/automationIds';
- Once you have imported the automationIds JS file, you can use all automation Ids declared in file and assign it to any element.
For Example:
<TextInput style={styles.input_container} value={userName} testID={automationIds.nameTextField} accessibilityLabel={automationIds.nameTextField} onSubmitEditing={() => Keyboard.dismiss()} />
Here we have assigned “nameTextField” as an identifier to the TextInput element. The same identifier will be used for iOS and Android platforms.