Detox移动端 APP 自动化测试框架

联合创作 · 2023-10-01

Detox 是一个用于移动端 APP 灰盒测试(介于白盒测试和黑盒测试之间,既关注内部逻辑实现,也关注软件最终效果,但关注度不及两者,通常在集成测试阶段进行)的自动化测试框架。

下面是登录界面的测试,就像真实用户一样在设备/模拟器上运行:

describe('Login flow', () => {
    
  it('should login successfully', async () => {
    await device.reloadReactNative();
    
    await element(by.id('email')).typeText('john@example.com');
    await element(by.id('password')).typeText('123456');
    await element(by.text('Login')).tap();
      
    await expect(element(by.text('Welcome'))).toBeVisible();
    await expect(element(by.id('email'))).toNotExist();
  });
  
});

特性

  • 跨平台:用 JavaScript 编写跨平台测试,目前支持 iOS 和安卓。
  • 支持在设备上运行(iOS 尚不支持):像真实用户一样在设备/模拟器上测试应用程序
  • 自动化 Synchronized:可监视应用程序中的异步操作
  • 专为 CI 打造:在 Travis 等 CI 平台上执行端到端测试
  • 独立的测试运行器:使用 Jest、Mocha、AVA 或任何其他喜爱的 JavaScript 测试运行器
  • 可调试:使用现代async-await API,使异步测试中的断点按预期工作
浏览 5
点赞
评论
收藏
分享

手机扫一扫分享

编辑
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑
举报