我不知道如何测试,我正在按照教程。我正在尝试运行:
package name.company.sunshine.app.data;
import android.test.AndroidTestCase;
public class TestPractice extends AndroidTestCase {
/*
This gets run before every test.
*/
@Override
protected void setUp() throws Exception {
super.setUp();
}
public void testThatDemonstratesAssertions() throws Throwable {
int a = 5;
int b = 3;
int c = 5;
int d = 10;
assertEquals("X should be equal", a, c);
assertTrue("Y should be true", d > a);
assertFalse("Z should be false", a == b);
if (b > d) {
fail("XX should never happen");
}
}
@Override
protected void tearDown() throws Exception {
super.tearDown();
}
}
但是我在控制台Test events were not received
的左下角。我究竟做错了什么 ?我应该跑别的吗?
答案 0 :(得分:12)
运行测试时,请选择Android测试选项。
JUnit和Gradle选项不应用于此类测试。
答案 1 :(得分:3)
我也在做这个课程并最终遇到同样的问题。
经过一个小时的修修补补后,我想我找到了解决方案。
不要像在视频中那样尝试从整个包中运行测试用例;你必须从一个类中运行它并选择AndroidTest选项。它不适用于Gradle选项。
答案 2 :(得分:1)
我做了两次更改后才能解决这个问题。
在“设置”中取消选中use in-process build
- >构建工具 - >编译器强>
资料来源:https://code.google.com/p/android/issues/detail?id=172162
强制Gradle通过更新运行配置重新运行所有任务。 将--rerun-tasks添加到脚本参数中。
来源:https://www.bignerdranch.com/blog/triumph-android-studio-1-2-sneaks-in-full-testing-support/
答案 3 :(得分:0)
此解决方案在android studio 1.5.1中进行了测试
如果你在android studio中测试有问题,因为使用进程内构建消失了,请包含以下内容:
<project-folder>
|-- .idea
|-- workspace.xml
只需在项目标记内部的最顶部添加以下组件:
<project version="4">
<component name="AndroidGradleBuildConfiguration">
<option name="USE_EXPERIMENTAL_FASTER_BUILD" value="false" />
</component>
...
</project>
答案 4 :(得分:0)
对我来说,另一个测试没有编译错误,但错误并不明显。我修复了错误,然后运行了测试。
答案 5 :(得分:-1)