UT - 1

发表于:2017-11-08 16:32

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:搜狗测试    来源:搜狗测试

  Instrumented test
  Instrumented Unit test 是允许在真机或者模拟器上的,而不是运行在本地环境下的虚拟机中。如果在测试时需要使用instrumentation information(例如app Context)或者你需要获取 Android 框架的组件(例如 SharedPrederences),这时候你就可以创建一个instrumented unit test。使用 Instrumented unit test 可以帮助减少编写模拟环境的代码。当然你也可以使用一些 mock 框架。使用Instrumented unit test 可以很好的利用Android framework api 和 supporting API。
  位于 module-name/src/androidTest/java/.测试运行在 Android 设备上或者 Android 模拟器上在测试过程中,这些测试代码会被编译成 apk 运行在设备上。系统会将这个测试程序 和待测程序运行在同一个进程中,所以测试程序能调用待测程序的方法。
  然而,unit test和instrumented test 只是形式来帮助区分,从Android平台(硬件设备或仿真器上)上运行测试和在本地JVM上运行测试。构建完整的测试套件的时候,你应该明白真正的测试类型如下表所述。
  JUnit
  你可以采用类似 JUnit 4 的方式来写单元测试或者集成测试。framework提供了一种很方便的方式来帮我们设置 、去除、断言一个基本JUnit 4测试类是包含一个或多个测试方法的Java类。一种测试方法始于@Test注释,其中包含的代码验证一个单独的功能(即一个逻辑单元)下面例子是使用Espresso APIs(UI 测试框架)的一个集成测试,用来测试点击一个 UI 组件,检查字符串得到相应的显示。
  Assertion classes
  由于Android测试支持库API继承自JUnit,您可以使用断言方法来显示测试的结果。断言方法比较测试返回值和实际值,并且如果该比较测试失败抛出AssertionException。使用断言比记录更方便,并提供更好的测试性能。
  为了简化测试开发,你应该使用Hamcrest库,它可以让你创建使用Hamcrest匹配器的API更加灵活的测试。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号