如果我在模拟器上的调试模式Eclipse中运行我的单元测试,它将运行正常并完成且没有错误。 但是如果我在运行模式下执行它会崩溃。 这是我的片段代码
public class TextAnswerButton extends Fragment
{
...
@Override
public View onCreateView(final LayoutInflater inflater,
final ViewGroup container, final Bundle savedInstanceState)
{
final View layout = inflater.inflate(R.layout.textanswer, container,
false);
answer = (TextAnswer) getArguments().getSerializable("answer");
final Button button = (Button) layout.findViewById(R.id.button_answer);
button.setText(answer.getAnswerText());
button.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View view)
{
callback.answerQuestion(answer);
}
});
return layout;
}
}
问题是
answer = (TextAnswer) getArguments().getSerializable("answer");
在运行模式下,answer将为null。什么是可能导致此为空的时间。是不是能够足够快地反序列化它?
这是我的Robotium测试的完整性,简单的创建活动和点击按钮。
public void testSelectQuiz() throws Exception {
SOLO.assertCurrentActivity("Expected QuizListActivity", QuestionActivity.class);
SOLO.clickOnButton("One");
//q0.getAnswers().
//SOLO.cli
}