2016-03-15 57 views
0

我已经从应用程序的实现阶段转移到测试阶段。我正在尝试编写一些单元测试,但是正在为这个概念而努力。我已经能够在android studio中设置并运行样本单元测试,该测试通过了。Android Studio编写测试脚本

这是一个简单的测试,2 + 2的结果等于4.我明白,问题是如何编写单元测试来测试我的应用程序的更复杂的方法?

以下面的方法为例,使用JSON将用户注册到数据库。显然这种方法不如2 + 2简单,所以如何为此编写一个单元测试?

我也有与检查电子邮件是否有效或不是一个简单的测试情况下,我得到了错误的问题是cannot resolve method 'is(boolean)'

有效的电子邮件测试

public class UnitTest { 

@Test 
public void validEmailTest() throws Exception { 
    assertThat(RegisterActivity.isValidEmail("[email protected]"), is(true)); 
} 
} 

单元测试类

import com.example.test.Activities.RegisterActivity; 
import org.junit.Test; 

import static org.junit.Assert.*; 

public class UnitTest { 


@Test 
public void addition_isCorrect() throws Exception { 
    assertEquals(4, 2 + 2); 
} 

@Test 
public void validEmailTest() throws Exception { 
    assertThat(RegisterActivity.isValidEmail("[email protected]"), is(true)); 
} 
} 

回答

0

看看Getting Started with Testing

你应该特别注意仪器化检验,这是一个Android设备或模拟器上运行,因此他们有权访问测试中应用程序的内部信息的测试。 Instrumented测试可用于单元,用户界面(UI)或应用程序组件集成测试。

您可以在https://github.com/googlesamples/android-testing

+0

我看看那里已经,但仍不能确定如何的例子应用到我的代码 – JJSmith

+0

感谢您的建议,我有alook找到例子,我就更加清晰了一点什么需要做的,我更新了一个错误,我似乎无法摆脱简单的测试 – JJSmith

+0

使用'assertTrue()' –