5个新自动化测试框架,你值得了解
前言
1. Kaspresso
解决flakiness问题; 解决Espresso不支持adb问题; 优化代码可读性;
@Testfun logout() {
onView(withId(R.id.logoutButton))
.check(ViewAssertions.matches(
ViewMatchers.withEffectiveVisibility(ViewMatchers.Visibility.VISIBLE)))
onView(withId(R.id.logoutButton)).perform(click())
}
fun testFirstFeature() {
mainScreen {
logoutButton {
isVisible()
click()
}
}
}
与所有其他测试自动化框架相比,通过复杂的策略提高了测试的稳定性;
测试运行速度提高;
抽象化并因此具有更好的测试可维护性;
可以处理关闭系统弹框;
开源,Github上有800多个Star;
DSL进一步提高了抽象水平,学习和熟悉入手的成本将会有所增加;
DSL有时会导致代码混乱;
因为是卡巴斯基出品,部分文档和issues都是俄文,对于大部分同学,英文阅读已经是艰难,俄语将会是灾难;
2. Barista
通过自动重试和自动滚动提高了稳定性; 附加的抽象级别(Page对象)有效提高可读性; 完备的文档有效降低学习成本; 开源,Github上有1200多个Star;
Idlingresources仍然必须手动实现;
3. BusyBee
简化实现,可以简化Idlingresources的处理;
开源,Github上有150多个Star;
小型工具,功能全面性上难以和Kaspresso,Barista相比较;
4. Repeato
非常易于使用,可供非开发人员使用;
Repeato不需要访问应用程序的源代码,降低使用门槛;
使用快速便捷,安装软件仅需几分钟;
提供可视化报告,简化故障排除;
没有开源;
付费,扩展版本是商业版本(每月49欧元);
5. Waldo
界面非常清晰直观,便于用户使用;
没有开源;
价格昂贵,每个月1999美元的费用将大部分国内用户拒之门外;
不支持数据驱动测试和复杂的测试用例;
目前不支持Android,官网表示即将推出;
结语
评论