Detox 测试中的默认 AsyncStorage 值
Posted
技术标签:
【中文标题】Detox 测试中的默认 AsyncStorage 值【英文标题】:Default AsyncStorage values in a Detox test 【发布时间】:2021-11-30 15:07:15 【问题描述】:我想知道如何在 React Native 中为 Detox 测试设置默认的 AsyncStorage 值。
我有一个欢迎模式,显示用户首次登录的时间。我们通过存储 AsyncStorage 值来控制是否显示模式。由于我们的测试会启动应用程序的不同实例(具有不同的设置),因此我正在寻找一种在测试开始之前默认值的方法。
我不久后使用 jest mock 进行了调查,但不确定这是正确的方法,因为我不想模拟所有 .getItem
,我只想模拟它存储的这个特定值。
【问题讨论】:
请提供足够的代码,以便其他人更好地理解或重现问题。 根据模拟:你会考虑用模拟的实现替换你的异步存储,实际上它被重新连接到你的主机上的文件甚至设置服务器上? github.com/wix/Detox/blob/master/docs/Guide.Mocking.md 您好,您能否描述一下在您的应用程序中是如何提前设置该值的,而不管测试如何? 【参考方案1】:我通过使用这样的动态链接打开应用程序来做到这一点:
myapp://example/?action=setAsyncStorage&key=someKey&value=someValue
该应用有一个动态链接处理程序,它可以识别此动态链接并将值设置到 AsyncStorage。
【讨论】:
以上是关于Detox 测试中的默认 AsyncStorage 值的主要内容,如果未能解决你的问题,请参考以下文章
Detox - 测试模式在 React Native 中的可见性
在 e2e 测试中的某个点开始使用 Detox 在 react native
反应本机打字稿屏幕测试返回测试套件无法运行 AsyncStorage 为空
React Native Detox - 运行特定的测试文件