Java和android测试方法

时间:2012-07-11 12:09:01

标签: java android testing junit compilation

我有一个关于技术或方法的问题,我可以用来快速测试我的代码和只是。最近我遇到了困难&我正在开发一个Android项目时,对于测试我的代码感到沮丧。每次当我想测试我的代码时,我不得不再次重新编译整个项目并等待模拟器重新安装应用程序,至少需要40~50秒来检查一些代码工作正常。有没有什么方法可以编译或测试一小部分代码/ 1~2种方法,而不必每次都重新编译整个项目?哪一个是行业中最新和最广泛使用的?

=====================================

其他问题。我已经对Java的JUnit测试做了一些研究,但是JUnit是我在寻找什么?或者它是不同类型的测试技术

5 个答案:

答案 0 :(得分:1)

你可以搜索一下Robotium。它可以让你进行黑盒测试。

http://testdroid.com/tech/54/automated-ui-testing-android-applications-robotium

答案 1 :(得分:1)

也许Robolectric正是您所寻找的。您可以使用JUnit仅测试不使用android sdk中的方法的java代码。

答案 2 :(得分:0)

您考虑过使用AndroidTestCase吗? JUnit只能用于非特定于Android的功能,但这可以完成Android特定代码的工作。

答案 3 :(得分:0)

有一个非常详细的安卓测试帐户:

http://developer.android.com/tools/testing/testing_android.html

这包括基本和活动测试,并建立在JUnit之上。

答案 4 :(得分:0)

对于那些不想使用Roboticum等的人,但只是坚持使用Eclipse内置的JUnit测试,这就是我的建议:

有三个项目:

  • AndroidProject
  • AndroidProject.test
  • AndroidProject.test.android

在AndroidProject.test项目中,您只测试模型,控制器等专门使用Java库的模型,控制器等。因此,没有Android Logcats,Toast或Patterns.WEB_URL.matcher(url).matches()) [android.util.Patterns](验证字符串URL)等内容。

在AndroidProject.test.android项目中,您可以测试使用Android库的活动,服务,模型类,例如上面提到的模式验证等。

能够使用Eclipse Run As - >对于您的JUnit测试项目,您必须进行一些设置JUnit Test,例如从每个单独的Test类中删除Android API,使用junit.framework.Assertorg.junit.Test导入等。有关重现我所做的工作的完整分步指南,请参阅我自己的Stackoverflow帖子:

JUnit Test Android classes without being forced to start the (slow) Emulator.